I am trying to open a specific workbook, from several books on a shared drive, based on a value found in a range of cells.
For example, range A3:B3 will contain a number, and cmay also contain some text, but based on the number found in that range, I want to open or activate a particular workbook.
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'm on excel 2010 and I have a small group excel files I open everyday. Most of the files are static in name and location. I've got a macro created to open those files, which works fine with workbooks.open and the file path.
There are two report files I want to incorporate into my macro of workbooks to open. The files are created weekly and the files names have the following format: "Report Name (YYYY-MM-DD).xlsm". I don't want to use the file's last modified date because older files may get edited after the more recent ones are created. The files are also not always created on the same day, so the solution needs to be flexible enough to not refer to a specific day of the week or anything.
Macro open an excel file based on the latest date found in filename.
I have a lot of data that I want to put into another workbook so as to free up space and make the workbook efficient, however, I do not know how to open a workbook in VBA.
Once this workbook is open, I then want to sum the data based on set criteria.
Ok, so I have some code that currently opens workbooks via directly calling them in the code via the normal open command. These workbooks belong to individual employees and this method works fine until a new person needs to be added to the process. I currently have to go into the code and add that person's workbook to the code.
Is there a way to instead pull a list of workbooks from say range D1 through D20 and open all workbooks that are listed in this range?
I am trying to make a spreadsheet that has a macro that will allow me/user to open a specific workbook in another folder based on a specific cell value in the active spread sheet. I.E. if cell B2 has a value of 7101010 the macro will open that .xls file when used or any other part number typed into B2.
I'd like to automatically run 1 of 4 macros depending on some criteria. Every workbook created has, unfortunately, the same worksheet name, so that leaves the only differences between the 4 possible loaded workbooks in the cells area and even those can be similiar in many ways. But....I found some criteria to separate all 4 workbooks...Here they are...
run macro 1 if this
1. Worksheet name says "Screen" 2. Cell H1 has the word "Lead"
run macro 2 if this
1. Worksheet name says "Screen" 2. Cell B1 has the word "records" somewhere in the cell 3. Cell H1 has the word "Lead"
run macro 3 if this
1. Worksheet name says "Screen" 2. Cell B1 has the word "records" somewhere in the cell 3. Cell N2 has the word "Delivered"
run macro 4 if this
1. Worksheet name says "Screen" 2. Cell B1 has the word "records" somewhere in the cell 3. Cell N2 has the word "Bevel"
I don't know if this can be done, but if so, that would be fantastic! I'm thinking that the macro would have to be "global" and in the user's personal workbook?
I need the code to allow a user to select a column of their choice in an open workbook of their choice so that data can be lookuped up and changed. I am happy to create the code to do the lookup/changing, however the nearest I have found is the use of an inputbox which is limited to the active spreadsheet only. Some people have said the input box could be used over to another spreadsheet but I have not found that to work.
What I will need returned is the workbook name, sheet name and column. That will allow me to point to that and do the task.
This code could be used by 5 people and those 5 people could be running it on 20 different spreadsheets.
I thought this would be easy to find but it has eluded me. When using Excel normally, if you do a simple lookup formula, or create pivot function, excel prompts the user to select the workbook/sheet.
I'd like to know if it is possible to run a macro in a workbook that will open another workbook (of the users choice) extract data from it, such as columns from its sheets then paste that data into the workbook the macro is running from. The file to be opened will change, so i've found some code that enables the user to select the file to open then open it.
Dim strFile As String strFile = Application. GetOpenFilename If strFile <> "False" Then Workbooks.Open strFile
This brings up the standard windows choose file to open box, then opens the selected file. Am I correct in thinking that the Dim here will store the file name I select in the open file box? If so, I'd like to know how to select the workbook using the dim so I can manipulate it from the workbook I'm running the macro in. Incidentally, once the the data has been copied, I'd like the workbook opened with the macro to be closed.
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 am trying to create a macro that will copy any folders that exist in any of the paths listed in the first column. The folders should be copied to the path of the open workbook containing the macro. Below is the macro I have currently, much of which was taken from information I found in this thread [URL]....
VB:
Sub wrapper3() x = 1 Set fs = CreateObject("Scripting.FileSystemObject") While Sheets("Air").Cells(x, 1) <> "" v = InStrRev(Sheets("Air").Cells(x, 1), "") dest = ActiveWorkbook.Path & Mid(Sheets("Air").Cells(x, 1), v, 99)
[Code]...
This code seems to work fine if all of the folders exist to be copied. My problem is that some do not and it is creating a "Path Not Found" error for which I need a fix. If the folder doesn't exist at the path nothing should be copied and the next path can be evaluated.
I am successfully opening a .csv file using a variable value stored in a named range in my Main file (the variable includes the directory and path). I copy data from the .csv file to the Main file then I need to close the .csv file without saving but I want to do that by using the
Windows("xxxx").Activate
command where "xxxx" is the namedrange in my Main file which stores the .csv filename (without the directory and path prefix).
I can use the
ActiveWindow.ActivatePrevious
command but if I have another workbook open, this one closes instead of the .csv file I opened from the macro.
I realise this is probably very basic and I've searched the forums but can't find any identical postings.
I'm going to be using a spreadsheet to keep track of where different people are at. So if Person 1 is in Room 3, I will stick a 3 in the box next to their name and then can look at the spreadsheet whenever I need and see what room they are in. When I'm deciding what room to put a person in, though, I need to be able to quickly glance at a list of Room #'s and see what one's are still available. So I have a bank of Room #'s in the spreadsheet....1,2,3, etc.
What I'd like, is some way to set this up so that when I put, for example, "3" in the cell next to "Person 1" the spreadsheet automatically removes "3" from the bank of available Room #'s and when I delete the "3" because the person has left, it adds "3" back to the bank of available Rooms.
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 have a requirement to create a master spreadsheet using a macro to copy set cells from several other spreadsheets and paste them into the master one in a list for accounting purposes.
So far the macro reads in the spreadsheet filename(s) and copy/pastes the cells to the master one - I need to be able to paste the values onto subsequent rows for each input sheet which is where my problems lies. Currently the row just pasted in is overwritten over by the following one, I need to go to the next row down but am stuck on how to do it.
Sub EmployeeExp() ' ' EmployeeExp Macro ' Macro recorded 12/02/2008 by eugene.cross ' Dim i As Integer Dim f As String
I've attached an example master output sheet to show what I want to produce, albeit this has only one row!
My Splash screen opens a few seconds after the workbook has loaded. Is there a way to make the workbook open minimzed until the the splash screen closes then open properly? What I trying to say is that only the splash screen is visible until it closes.
I would like to write a Sub that will see if a workbook is open and if it is not then open it. I know how to have a macro automatically open a workbook, but I run into problems when the macro runs and tries to open an already opened workbook.
Create a full copy of an open workbook (eg. activeworkbook MyFile.xls) using VBA, with the new copy (eg Book1.xls) open as well ,without having to save a copy first then open it ?
I did a macro on my mac to transfer a sheet from one workbook to another worbook. It works very well when the destination workbook is open. Therefore I wanted to add some piece of code to check if the destination workbook is open. If not then I wanted the macro to open it before tranfering the sheet. Here is the code I´m using for tranfering the sheet
Sub Transfer_Sluttet() If ActiveSheet.Index <> Sheets.Count Then Application.DisplayAlerts = False Set ws = ActiveSheet Sheets(ws.Index + 1).Delete ws.Move Before:=Workbooks("Sluttet.xls").Sheets("sheet2") 'Moves active sheet to beginning of named workbook. 'Replace Test.xls with the full name of the target workbook you want. Application.DisplayAlerts = True End If End Sub
This is the type of macro I useually use on my pc to check if a workbook is open and if not then open it
If IsWorkbookOpened("Filename.xls", "C:Documents and ..................
I would like to be able to have a user execute a macro by clicking a command button that would copy some named ranges (Name1,Name2,Name3) BUT ONLY the rows/cells that have "True" in column A. The destination for the pasted data is a closed Workbook named Data – Sheet1 located on a network drive (\NetworkTemplate)
Example: One named range are cells D10:D50, a second named range are cells F10:F50, and a third is G10:G50. – But ONLY rows 11, 13,14 have True in column A, so I only want to copy the 9 cells not the entire row from those select ranges and open a closed workbook and paste the values only starting with cell B10.
I can not find anything that looks for a value in one column and only copies select cells to another workbook.
(The attached workbook will provide a more obvious explanation.)
I am building a 'reporting' workbook. It has 3 tabs.
i. the first I will use for buttons to call macros (no help needed) ii. the second tab is 'REPORT' - where data from the third tab ('DATA') will be collected/organized -based on a textual value in column D - before being exported into a seperate workbook (finalized report). iii. third tab is 'DATA' - this sheet will contain all the data that will provide info for reports
Presently, the 'REPORT' tab has been manually filled in with data from 'DATA' tab - I did this thinking it would provide better explanation here; take note that values in column D will be gathered via vlookup to other worksheets not included her.
Here is what I want to do:
1. goto 'DATA' tab, find the first PLATFORM (column D) text value
2. goto 'REPORT' tab, put that text value in B2
3. go back to 'DATA' and in each row that the same PLATFORM is present, copy over the corresponding info to the appropriate cell in 'REPORT' tab
4. once I've collected all the rows for one PLATFORM - export and save the 'REPORT' worksheet to a seperate workbook in 'C:REPORTS' and close
5. clear the range where data is being written in 'REPORT' tab ("A5:H60000"), then go back to 'DATA' and get the next PLATFORM (column D) text value - enter it into B2.
6. fill the range ("A5:H60000") with the corresponding values from 'DATA' based on the new PLATFORM name...
display workbook not found in Array set without Filepath, As for workbooks found we can use Dir function, but it is not work for workbook not found. The Dir() will return Blank.
I am trying to Loop Through a Folder Of Excel Workbooks and get required Info from one of the workbooks, back to my Master File.
I thought of "VLOOKUP" but I am not shore if it will work over Approx. 60 workbooks? if there is an other or better approach, I am open to all Ideas.
So far I have code to Open my Master and declare the criteria for the VLOOKUP with the help from:
Re: Run A Macro On All Files In A Directory -------------------------------------------------------------------------------- See also this page on how to loop through a folder Loop Through Folder Of Excel Workbooks _________________
I am now able to open all Files in the sub directory, now I need to know how to approach my problem of looking for and getting the Info back to my Master File with approx. 5000 entrys to look for?
I was looking at this VBA code the other day and i was wandering what i meant. I thought if somone could expliane line by line,
Sub CommandButton1_Click()
Dim ThisAddress$, Found, FirstAddress Dim Lost$, N&, NextSheet& Dim CurrentArea As Range, SelectedRegion As Range Dim Reply As VbMsgBoxResult Dim FirstSheet As Worksheet Dim Ws As Worksheet Dim Wks As Worksheet Dim Sht As Worksheet
I have data that daily needs to be refreshed and printed to pdf.
I figure the simplest way to do this would be to task schedule the workbook to open daily. Then on open it will refresh the data, print it after all data has been refreshed and close the workbook.
I set it up originally without the need to print so I have all the queries set to refresh when opening the file, however when I now try and put the code to print to pdf on the workbook open event it runs before the queries are finished running. (Query notes: queries were created through Microsoft query, and are accessing a MySQL database queries set to refresh when opening the file queries set to enable background refresh).