If the admins or you would like to change or recommend a change, I am trying to figure out what the code would look like for cells B22:B28. I need it to count the number of occurrences of the part number in A4:A17 and then combine the applications from the corresponding cells in column F (F4:F170 into a single cell (B22:B28).
On sheet 2 I would manually copy/paste the list of part #s from sheet 1 and remove duplicates. The add the formula that I can't figure out into column 2.
A VBA macro uses the Shell command to open several DOS command boxes. Each DOS command box is copying a file from one location to another. Since I am copying the files over a network, it is most efficient to copy the files in parallel (simultaneously) rather than sequentially. I would like to pause the program until all of the files are copied, i.e., until all of the DOS command boxes have closed. Is there a way to pause the program until all command boxes are complete?
I have a macro that cycles every 5 minutes. I have tried everything I can to get this program to run while I modify a sheet in the workbook to no avail. I have however figured out that if I open up a separate excel application that my macro can continuously run without preventing me from modifying the other application. Now I need to figure out a way toggle between the two excel application windows if a condition is met. The basis of this is to allow production associates to create a schedule and modify it while a macro looks into the defect database and if a defect becomes too problematic, the macro interrupts the schedule to display the issue.
Is there any way to access all the applications which are opened through only Excel.. Like creating a menu which will list all applications that are running.. like Word., other excel workbooks,Notepads etc?
I am using MS Word to create a list to go into Excel, it seems advantageous to do it this way because I'm using the Heading Outline Numbering feature of Word.
Presently my macro assumes the word document is closed. How do I modify the macro to:
1. check if the file is open? 2. if already open, switch the focus to word? 3. switch the focus back to excel?
Dim FileToOpen As String
FileToOpen = ThisWorkbook.Path & "5Whys.doc" Sheets("Data1").Select ' MsgBox "Active sheet is " & ActiveSheet. Name ' My check ActiveSheet.Range("WordClear").Select ' Existing data to remove Selection.Clear
Set appWD = CreateObject("Word.Application")
' here I would like to check if the word file is open
so i'm building an application that'll allow users to manipulate records in Excel with just a GUI, using Userforms, Modules and Class Modules. it's all working but i'm feeling like i skipped a little on structuring it properly.
for example (from my Java work in college), you'd call just one object from the main method, which would create a GUI object, and create/manipulate instances of the different Classes when buttons are pushed. basically you one object whose main created other objects, who ran procedures, etc. what i'm hoping for is to make it as modular and easy to maintain as possible. would anyone have a good resource for optimising a medium-sized application? (the tips Excel/VBA Golden Rules. These Should NOT Be Optional were very good, by the way.)
I'm using a VBA UserForm (ShowModal=False) as the front-end on a spreadsheet for logging purposes. Here's the progression of the problem:
1. I have the UserForm loaded and the cursor is in any given textbox/ combobox on the form.
2. I switch to another program, then come back to the UserForm.
3. The cursor no longer appears in whatever textbox/combobox I was in when I left the UserForm. If I type, nothing happens (I have to click the field again first, then type).
However, if I TAB, it will go to the next field in the Tab Order just fine. It seems that the control has "pseudo-focus"--it knows which field to tab to next, but the control won't accept input unless you click it. The odd thing is--this UserForm has a button which launches another "child" UserForm. That "child" UserForm does not have this problem.
programPath = "C:Program FilesInternet Exploreriexplore.exe" ' works 'programPath = "iexplore.exe" ' does not work Shell programPath + " " + fileToLaunch, vbNormalFocus
but the drawback is that the invoked program (iexplore.exe, at least in my case) needs to have the FULL PATH to where the program exists = the "C:Program FilesInternet Explorer" which may or may not work on someone elses computer. This hardcoding will not work and is not transportable.
Is there a trick to find where the executing program lives? or launching it without the path?
I have some code which I want to run on all apart from one sheet called 'List'. At the moment I am selecting each sheet before running code for the specified sheet. This doesn't allow for any sheet name changes etc. or additional sheets. Is there a quicker way of doing this rather than having a sub to manually select each sheet?
Here is an example of my code for a button on the sheet called 'List'. The only thing Sheet1, Sheet2 does in this code is select that sheet.
I am trying to run the same test on multiple cells, to get the column letters of cells while there are less than 78 columns in use (these column letters will later be used for the Range().Select work involving copy & paste-ing into a word document). I originally thought I could use GoTo statements in conjunction with variables but, having researched it and coming across this, I think I need to find another approach.
At present I have a long section of code that looks like this (I am writing and testing at present so what i make will be put into a larger macro):
VB: Sub FindColumnLetters() Dim i01Feb As String, i02March As String, i03April As String Dim NumbTemp As Integer, NumbTemp2 As Integer
However VBA didn't like the use of variables with the GoTo function and there are not decent ways around. how I can do the original but in less space? FYI the codes above are repeated for 3 columns, where I am actually doing this for ~20 column refs so the space it takes is HUGE at present.
I am running a spreadsheet to keep track of workshop technician times. The code I am using I have copied and modified from this forum works really well but I need the timer to go in minus time instead of stopping at 00:00:00. It work be really great if the timer cell changed colour it identify that the Technician had run over the allotted time.
I am seeking code that will go to Sheet 4 (named "Extract"), copy a1:a5 and return to the active cell the macro was launched from and copy the values in.
The challenge I am having is how to get the code to return back to the cell it was launched from since I want the flexibility to use this macro in multiple tabs/sheets to copy the info into ANY selected cell within ANY sheet. As it is now, I have to go change the sheet name each time for the then active sheet.
I've attempted to insert a generic worksheet reference, however I end up with a debug issue.
building a spreadsheet to track instructors' classes' test scores. I have 3 basic variables: 1.) The instructor's name 2.) The course taught, and 3.) The classes' scores for that particular course. The 3 courses each have 3 different variations of the end-of-course test (9- total tests.) On the last page of the excel spreadsheet, I have a block for each of the instructors. I've been trying (with no success) to keep a running average of each instructor's class test average for the 3 courses. The part that is stumping me is associating the instructor's name with their class average, and then averaging all of their grades on that page together; the main reason being that this document is living, and new grades are entered almost daily. I tried using variations of the count function with no luck, other than to tell me how many times a particular instructor has tested in a particular test. Please help, I have the feeling that the function I am looking for is way-above my skill-level in Excel.
I would like to have a running percentage calculated in cell P3 for the attached file. Cells C3, E3, G3, I3, K3, M3 show the number of correct picks. Cells D3, F3, H3, J3, L3, N3 multiply the number of correct picks by a given value in row 1. For each round there are a possible 32 points. I would like to use some sort of IF Statement to have a running winning percentage calculated for each round where points are achieved.
Example: Round 1 - #picks correct / 32 possible points Round 2 - # picks correct from Round 1 + # picks correct Round 2 / 64 possible points Round 3 - so on until round 6 with total picks correct overall / 192 possible points
Have list of employees and their dependents organized into the following columns: Employee ID (unique to employee), Relationship Code (E=employee, S=Spouse, D=child), andBirthDate. Would like to add a column called Sequence Code which counts the family members (employee= 0, S=1, oldest D=2, next oldest D = 3, and so on).
Employee ID RelationshipCode BirthDate Sequence Code 100006641 E 2/5/75 0 100006641 S 1/2/75 1 100006641 D 3/9/89 2 100005555 E 2/5/77 0 100005555 D 1/2/89 2 100005555 D 3/9/88 1
Note that the list is sorted by Employee ID, but not Birthdate. Can this be done with a formula in the Sequence Code column? I really suck at VBA
how to run my Macro over multiple (about 60) .xlsx files. I have been looking around, but haven't quite got anything working yet.
I have all the files in the same folder with similar names (i.e. Subject_01.xlsx, Subject_02.xlsx, etc.).
What I'd like is:
*open Subject_01 *run script (some calculations, copy/pasting, my script for this is working fine) *save file under a different name (i.e. Subject_01_processed.xlsx) *close file *again for Subject_02, Subject_03, etc.
Additionally, I have a second question: after I have the processed .xlsx files, I'd like to copy some cells from each .xlsx file (e.g. A1-H1) to a new file. There, I'd like the data from Subject_01 to for example be in cells A1-H1, from Subject_02 in cells A2-H2, etc.
I need to run a very simple macro (filter by date, copy, and paste) on every worksheet in a workbook, and then place that data into a summary page at the "end" of the workbook. Most other posts had to do with some kind of formatting that would work in succession on the sheets linearly from left to right (for lack of a better way to put it). My problem, however, is that the data would need to be pasted into the summary worksheet, and then somehow the macro would come back to the next sheet (after the one it just did) and do it all over again, so on and so forth. The worksheets are arranged alphabetically, but other than that there is no sort of easily identifiable progression between them (i.e. Sheet1, Sheet 2, etc.).
I have 3 seperate macros (macro1, macro2, macro3) that have to be run in order. Is it possible to create a macro to run them in order and what would the code look like? I will have it assigned to a button on the worksheet.
I would like my macro to go to a certain folder- in this case N:Aexeo ClientsJabre2008Excel Diet Run, open each workbook therein ( to this end I have found the first part of the code below on another thread) and perform the ExcelDietMacro (also below). I am missing something though as nothing is happening, would anyone know from a quick glance what is wrong? Should I have these as 2 seperate Sub End Subs or combined into one? I know that the Excel Diet is correct thanks to the original designer and Rory on the forum for getting it adjusted to my needs.
Also each workbook within the folder will have the same password to open, is it possible to insert some code in the macro to do this automatically?
Sub LoopFiles() Dim MyFileName, MyPath As String Dim MyBook As Workbook MyPath = "N:Aexeo ClientsJabre2008Excel Diet Run" MyFileName = Dir(MyPath & "*.xls") Do Until MyFileName = "" Workbooks.Open MyPath & MyFileName Set MyBook = ActiveWorkbook Application.Run "ExcelDietMacro" MyBook.Save MyBook.Close MyFileName = Dir Loop End Sub
Sub ExcelDietMacro() ' ' ExcelDietMacro Macro.........................
I am trying to find a way to set up a macro that will allow me to pull in data - create the Pivot table - delete the table - then pull in fresh data (of a different row length - same number of columns) and create another Pivot table. I have tried to manipulate recorded code to no avail. Here is what I am starting with:
Const lngLastPossRow As Long = 65536 Range(Cells(1, 1), Cells(Cells(lngLastPossRow, 1).End(xlUp).Row, 24)).Name = "Data"
While it creates the first pivot table fine, after deleting it and starting again it wants to create the next sequence (PivotTable3) which crashes the macro. I must close the file and reopen to run it again.
I want to be able to select a cell, for example A10, this would then run a macro that would copy and paste several cells of information along that row and paste it on another worksheet. However, if i then choose a15, a3, a79 in turn (using the control key), it would run the macro using those rows in turn.
i'm looking forward to hearing if and particuliar how this could be achieved.