I have an excel template that needs to be copied multiple times and each sheet needs be named according to a list in an excel spread sheet. I also have a formula in the template that needs the value copied instead of the formula.
I got this script from an site and tried it. It runs but I don't see any spread sheets.
In my workbook I have about 20 sheets (less in the attached sample), and on most sheets I’d like to query data for each day and find an average value based on the time and then copy that result into another sheet. I’m not sure if I’ll need 2 macro’s for this or if one can be used.
Here’s a quick description:
Assuming that I am currently in the sheet I want to run the macro, then I will either input “1:45” or “0:45” into a popup box, or I could always simply input the 1:45 or 0:45 in the code itself. I’m flexible
If I input 1:45, then I’d like the macro to find the first 1:45 in Column B and the value in the same row in Column F will be used in the calculation. Once 1:45 is located, then the macro moves up to find 22:45 in Column B and the value in the same row in Column F will be used in the calculation.....
I am trying to call another macro, but instead of using the name of the macro, I have it in a variable. I am getting an error that says "Compile Error: Expected sub, Function, or Property." Can you call a macro that is in a variable? I basically have a bunch of macros created. I also have a list of the name of those macros on a worksheet in Excel. I want excel to start at the top of the list in excel and run the macro, then move down and run the next macro, and so on. Below is my code.
Sub Commercial_2005() Dim Macroname As String Workbooks("bleeg.xls").Activate Worksheets("CommercialList").Select Cells.Range("a1").Select While ActiveCell.Value <> "" Macroname = ActiveCell.Value Workbooks("copy of recast_Report_v2.xls").Activate Call Macroname Workbooks("bleeg.xls").Activate Worksheets("CommercialList").Select ActiveCell.Offset(1, 0).Select Wend End Sub
I have a set of eight files, each of which is refreshed daily through a macro. I wanted to set up a master macro in a separate file that would open up each of the eight in turn, calls its refresh macro (which saves and closes the workbook), and then open up the next one, etc. I've searched the board and Help on this subject, but I keep getting an error:
Sub UpdateCSHoldReports() ' A sub to update all the US CS Hold Reports
' First, change the directory to the one that holds the files
ChDir "s:Marketing_ReportsCustomer Service2006CS Hold ReportsUSA"
' Next, open each file in turn, and run its refresh macro ' The refresh macro saves and closes the file automatically
Workbooks.Open ("VERIFICATION HOLDS 1000 PLUS.xls") Workbooks("VERIFICATION HOLDS 1000 PLUS.xls").Activate ActiveWorkbook.Sheets(1).Activate Application.Run ("VERIFICATION HOLDS 1000 PLUS.xls!V1000Refresh") End Sub
I'm only working on one file right now; I'll add the others when I get this one going. The error message I get is "1004" "The macro VERIFICATION HOLDS 1000 PLUS.xls!V1000Refresh cannot be found." It occurs when the Application.Run statement attempts to execute.
What obvious thing am I missing here? I have checked all the spellings, etc., so it's not something like that.
I'm writing some code in a "control" Excel file that will open a series of other files and successively run some processes. Each of these files has its own unique "refresh" macros, with parameters that vary from file to file.
How do I put code in my "control" file that will, when it opens each of these other files, run the "refresh" macro that is contained within them, and not the "control" file itself?
I have been combining multiple macro's into one large Macro and after research, it seems that only the call function works without any hitches.
Is there a way to use the call feature in one workbook while the macro's themselves, 5 or 6 of them, are in another workbook that is closed?
All users would have access to both workbooks.
The reason I am trying this is because I do not want all the other users to have to choose between multiple macro's and some of my colleagues like to use a radio button to link to the workbook. so it needs to have one file in it...
I have a workbook with two macros that the user can run individually. They unfortunately take a fair amount of time to complete (approx 1 hour each) so I implemented some timing related code that at the end of the macro completion, it notifies them with a msgBox indicating how long it took to run. With that said, I would like to allow the user to run a macro that simply calls the other two so that they can kick it off at the end of the day and they both will be finished by morning. I created a new macro that simply makes a call to each of the other macros individually. The problem is, my msgBox that displays after the first macro completes, waits for "OK" acknowledgement which defeats the whole purpose of being able to run them both via one macro. I have tried to include Application.DisplayAlerts = False prior to calling the first macro but it is not working. Here is an example of what I am trying to do.
Sub runAllMacros() Application.DisplayAlerts = False Call compileBookData Call compileLaborData Application.DisplayAlerts = True MsgBox "All Rollup Macros have completed execution."
I've assigned a single macro to numerous Form Checkboxes (not ActiveX). I'd like the macro to be able to identify the Checkbox calling it, so that if for example, if it were fired by clicking "Check Box 41", the macro should know that.
Is this possible, or must I use an ActiveX control?
Using a different script application, I would like to run my VBA macros while working in Excel. I was wondering if I could achieve that using PostMessage or SendMessage calls. Part of the problem is that Excel only seems to allow either Ctrl + letter or Ctrl + Shift + letter as an assignable macro shortcut. My script gives me flexibility in that I can assign any key or combination of keys to trigger any kind of routine, like a PostMessage call, for instance. So while working on my workbook, I might want to press, say, ScrollLock followed by a letter of my choice, followed by another letter of my choice (a sort of super shortcut), resulting in the running of a Macro of my choice in Excel.
I have a macro running in a workbook that gathers some data (a date, a string and a few arrays). Towards the end of this macro, I need it to open another workbook and run a macro that sits in this other workbook, using the data from the first workbook. I then need it to return some results (several integers) back to the first macro to be pasted into the first workbook.
I gather that I can't use 'Call' as the second macro is in another workbook.
I've found that I can use Application.Run but I'm unsure how to carry variables back and forth using this.
How to move the variables between macros / workbooks using the Application.Run option, or maybe another way of doing things?
the macro works fine until it executes the paste values. At that point, the macro jumps to the "CountThem" function which is located in another workbook. The data that I am copy/pasting is in no way connected to any cells that are using that function. Although, other values in the workbook are passed down from data that uses that function.
I am still in the dark ages using Excel 2000.
This is the code for my macro.
Code: Sub Current_to_Raw() ' ' Current_to_Raw Macro ' Macro recorded 2/12/2014 by ' ' Range("N14").Select
I created two macros. One for refreshing the data I pull from a database, and another one adding some formulas I need. On the formulas macro, I don't know how to have it automatically fill until the last row of data to the left of the column with the formula. (Just like if I double clicked it and it filled down automatically). I also tried to combine these two macros, but I get errors and they don't execute.
I am trying to create a spreadsheet that will take all my grades from the semester (I'm a college student) and compute my GPA. I managed to get a weighted average for each class, but the grade is on a scale of 1-100. I need to convert that to a letter grade, and then a 4.0 scale. How can I set it up so that it will return "A" if 90<Grade<100, "B" if 80<Grade<90, etc.? I'm apologize if this is something simple, but I've been trying to find the right function for a long time.
I work for a construction company, Someone else created a workbook a few years ago with 140 similar pages, each listing a separate piece of equipment as a service record. I need to print these out randomly for mechanics to update with new information, as they service the machines. However, some of the pages of the original workbook are goofy and the workbook as a whole could be improved. But, oh that many pages!
I have worked on a new template page for entering information to make the worksheets all cohesive and updated. Is there an EASY and/or FAST way for me to copy this page 150x to make a new workbook, and just enter my data onto each new page? I really don't want to reformat each page of the original workbook individually to see if I can fix all the glitches and weirdnesses that have occurred on the pages over the years. I thought it would be much easier to retype the data onto new pages.
I am having a little difficulty getting my vba to correspond to what i want it to do. I have columns that can vary with how many rows they have weekly. The all start at P2, R2, V2.
These columns always have the same number of rows as each other, but the number of rows varies.
I compare my R2>P2, and if it is return the number in R2. If not, i am looking to take P2 and round down to the nearest .95. (ex: R2 is at 3.45. The value that should be put in in V2 is 2.95. Since the values all change as well, it needs to compare: .96-1.95, 1.96-2.95, etc. all the way up to 15,000.
I know it can be done with if's, whiles, or from i to x, but my experience is in vb.net, not vba. And, since i am new at this, i can write the code, but don't know how to make it correspond to a new excel filename weekly.
My workbook is a variation of the below repeated on a number of sheets.
A B C
1 Name Carrots Peas
2 John Smith 0 7
3 John Doe 2 1
4 Joe Bloggs 4 0
On a separate summary sheet Im struggling to create a formula that would look through all sheets and Sum where 'John Smith' appears and then sum the number of 'Carrots' (if any) and 'Peas' and then the same for any other names that has values attached to it. The names in each sheet may not be in the same order or appear at all otherwise I would just use a standard sum on each sheet.
I have written two VBA programs around the same time. Both run on open and pull external data and create graphs. My problem is that I want the end user to be able to run the report multiple times by choosing the name of the macro from the Excel macro menu (i.e. Tools>Macro>Macros) but only one of the workbook macros shows up on the menu. why the other macro is not visible on this menu???
I believe in the past that I have told Excel to send the output of the pivot table to different worksheets. For example if I have three regions- the pivot table would send the output to three worksheets and name the worksheets with the three regions.