I have a macro that 'opens all' workbooks in the specified folder. I've copied it over, but need to only open all the wbk's if a specified worksheet exists w/in the wbk..I know there is a dim ws statement that can be used, but how do i use it w/ the current macro?
Option Explicit
Sub recTestOpenAll()
Dim x As Integer
Dim WB As String
Dim wbk As Workbook
For x = 1 To 100
WB = "G:Rule Test FilesREC " & x & ".xls"
On Error Resume Next
Set wbk = Workbooks.Open(Filename:=WB)
On Error Goto 0
If Not wbk Is Nothing Then
End If
Next
End Sub
I have an array that opens a workbook containing close to 100 worksheets, and copies specific sheet names into there own individual workbooks. The problem I have now, is that I assume the worksheet exists in the workbook, but often times it does not Is there a way to add some sort of "catch" that will 1st verify the worksheet exists instead of my code crashing?
is it possible to write vb code to open the workbook, scroll through everysheet? extract the values from each worksheet?
let's just say, I only know the workbook name, but not the sheets of the name inside. So the vb code could scroll through every worksheet without knowing the worksheet name, only the workbook name(workbook.xls)
1. I receive a weekly report 'Over Due Orders_1_14_08.xls' for example. This is sent every Monday and there is a Worksheet on this report called Raw Data.
2. I want to copy Raw Data from that Workbook but the name of the report changes w/ every Monday's date.
Any way of doing this - like just looking for "over due orders" in the Workbook name?
I have a formula that uses the OFFSET function so that subsequent row adds will automatically adjust the formulas. For example, cell A1 contains the value 1 and cell A2 contains the formula:
=offset(A2,-1,0) + 1
When I insert a row above row 2, the formula above adjusts to reference cell A3, which is what I want.
What I am running into is that when the workbook is opened, something in the workbook changes, causing the "Do you want to save the changes..." popup to appear even though all I do is immediately close the workbook.
I have traced the problem to my use of the OFFSET function, as when I change the formula to
=A2-1
and repeat the scenario, the workbook closes without the "save" popup.
Does the OFFSET function cause something to change (no cell values appear to have changed) and is there a way to get around this?
Through excel I run a dos program which spits out a results file and my macro then opens this file in excel. The only problem is the macro tries to open the file before the other program has writen it. I have tried to fix this using the
I have created a spreadsheet some time ago and have been asked to improve on it but I'm rusty with VBA.
I have an automated ordering system that saves each sent order as the date e.g "05-04-2013.xls" but the management team want a graph with the data for the last 4 weeks compared. I have created a seperate workbook called "consumables report.xls" which has a column with the products listed followed by columns "Quantity" and "cost" which is repeated for the 4 weeks of the month.
I want to add a button to prompt the user to choose the saved order e.g "05-04-2013.xls" (all orders saved in same directory) to copy and paste the quantity and cost columns (c8,D69) into "consumables report.xls". I got this to work earlier but it would only paste the formulas and not the values. So I need
A prompt to open workbook Copy range (c8,d69) Close work sheet Paste special .value (c8,D69)
I dont care if it has to open the workbook to copy the data as this will only be used once a month so it dosnt matter how slow the code is.
I have Monthly sales sheets that import my cash register data into them. I wanted to set them up to do everything without being there. So I have my task manager open excel at 9:30pm everyday and it runs the macro to import the data into the correct day of the month. Here is the workbook
open macro-
Private Sub Workbook_Open() Dim dTime As Date dTime = Time If dTime >= TimeValue("9:30 PM") And _ dTime < TimeValue("9:40 PM") Then ImportData End If End Sub
This is in my July spreadsheet only. So is there a way to make it know which month spreadsheet to open on the 1st of the month? So come August 1st it will automatically open the August workbook and input the data for the first day? By using the date?
I have a presentation that I open from a short-cut. After the "Welcome Page" is opened, I want to open a second workbook in a new instance of Excel after 4 seconds.
I think that I can open the new instance of excel, but I don't know how to activate the macro after 4 seconds.
I'm sure there is a function someplace for this that can be used in a macro.
Then, after the second Workbook is opened, I want the Welcome Page "Workbook" closed, leaving the second Worbook open.
i would like to know whether a worksheet exists or not... say, the worksheet name is sheet1, i need to check whether the worksheet exists... the point is, i need to delete the worksheet if it exists and execute a code... if the worksheet doesn't exist also, i need to execute the code... so im getting a little confused with this... i need something like this...
if sheet1_exists then delete the sheet end if my_code.......
Does anyone have SIMPLE code for this that can be run in a normal Sub. My worksheet will always be named "Cleaned". I have seen some posts regarding Functions and other things that seem more complicated than necessary.
I have the following code which copies a sheet to another workbook and renames it with the current date. However I need it to check if there is a sheet already existing in the other workbook with todays date first. If there is then it should delete the old sheet and copy the new sheet or just overwrite it.
I have written a routine that automatically saves the file to a specified folder as the name of a cell from one of the worksheets. I am trying to use the following code to see if that filename already exists and stop the routine if it does. If I manually enter an existing filename the routine works well, however I cannot get it to recognise the automatically created filename, here is my .....
I know this is my third thread, but I have made sure that I have trawled through other threads before posting. I have created some VBA to collect data from multiple workbooks and paste them into one workbook, Basically the copy and paste script runs according to how many tabs are in the summary workbook because each tab ( sheet) is essentially a condensed version of a workbook. Unfortunately some workbooks I am getting the info from don't have the right data that the copy and paste program is looking for or sometimes the document doesn't exist, is there anyway of telling my VBA to pass this tab if the document doesn't exist instead of throwing up a VBA debug error?
I have a spreadsheet with columns set up like this: RowName, Date, Value1, Value2, Value3 etc. The date is in format YYYYMMDD. What I am trying to do follows, in some sort of pseduo fashion.
How do I delete a worksheet but ONLY if it exists, if it doesn't exist, ignore the command. I'm afraid to mess up the other code in the macro/sub, so here it is...
I am writing a macro which first needs to look and see if a certain worksheet exists. If it doesn't then I want it to create it but if it does I first want it to delete the sheet then create a blank one with the same name. At trhe moment I have this but it is scrappy and doesn't work very well:
On Error Goto AddSheet If Sheets("MONEYSHEET").Activate Then Goto Data
I can delete Sheet5 using this macro. I would like to put this in the workbook so that when I close the workbook it will be activated if Sheet5 exists. If Sheet5 does not exist nothing will happen.
Sub DeleteSheet5 () Application.DisplayAlerts = False Sheets("Sheet5").Delete Application.DisplayAlerts = True End Sub
how to mark the post as solved other than go advanced and selecting solved from the drop down menu can you tell me how?
suppress range name already exists when coping out workbook. I’m coping the selected worksheet out to another workbook…sometimes I get a message that a range name already exists and do I want to rename or not?. I always want to say no (don’t rename)…?
Application. ScreenUpdating = False On Error Resume Next Dim wb As Workbook Dim ws As Worksheet Set ws = ActiveSheet Set wb = Application.Workbooks.Open("\03-serverdatadatabasemarterialListingsArchive.xls") If Err.Number <> 0 Then MsgBox Err.Description & "help" Else 'ws.Copy After:=wb.Sheets(wb.Sheets.Count) ws.Move After:=wb.Sheets(wb.Sheets.Count) wb.Save wb.Close 'ActiveWindow.SelectedSheets.Delete End If Application.ScreenUpdating = True MsgBox "Worksheet has been Archived..."
I'm looking to use the value from a series of dropdowns (made via data validation lists).
Cell AM5 is a dropdown of named ranges made form a seperate sheet Cell AO5 is a dropdown that uses '=INDIRECT(AM5) to lookup the values in the named range.
I need cell AO5's value to be used to filter rows in the current worksheet. The current problem is when i use the first dropdown in AM5 it still displays the last value, untill i use the dropdown to select a new one. This value typically will not be found and i do not want my code to execute in these cases.
I'm creating a macro to select, modify dimensions and place shapes on a excel sheet. (I'm talking about pictures insered and stocked in a specific sheet of my workbook) When the users insert a new picture he has to set a name for each of them. A combobox contain the choices, when an item is selected, the macro identify, size and place the corresponding picture.
But I have a bug if a shape doesn't exist when I try to select it :
Sheets("fiche de controle").Select 'select the sheet with the pictures ActiveSheet.Shapes(Item_old).Select 'select the shapes "Item_Old" Item_Old is a variable corresponding to the picture name.
If the user made a typo, I have a bug. Someone knows how to test if the shapes exist to display a meesage if not ? Or somethig to avoid this kind of bug ?
I'm having a slight problem with this script. What I'm looking to do is before the workbook is closed is check to see if the workbook already exisits on the users desktop if it doesnt then save it to the users desktop. if is does exists then just exit the sub. Here is what I have so far but for some reason it kept displaying the aleart message that the file already exists and wants to save it again.
I just added the displayalerts = false in but the script still does not know that file already exists. So when the file is closed it keeps saying file has been placed on your desktop.
I am trying to write some code that will copy the worksheets from one workbook (wkbSource) to another (wkbTarget), but I need it to maker sure the worksheets being copied from wkbSource don't already exist in wkbTarget. If they do exist, it just skips and moves to the next worksheet. Here is the code I have already, I thought that by adding the On Error Resume Next to the code it would just skip it, but for some reason it is still copying the first duplicate workbook, then it skips.
Code: Dim wkbSource As Workbook Dim wkbTarget As Workbook Dim WorkbookName As String WorkbookName = ThisWorkbook.Name