Open workbook "inactive"

  • Thread starter Thread starter Helmut
  • Start date Start date
H

Helmut

I open a workbook which has a different name each month - against this
workbook I run a PERSONAL.xls macro which requires that workbook
"Employees.xlsx" is open in the background.
How can I as first item in the Personal.xls-macro open this "Employees.xlsx"
workbook so it is "inactive" and the rest of the macro runs against the
firstly opened workbook which has a different name each month?
 
this month yr workbook is "March.xls"

let's presume you only open this a/m file

Edit the macro and put the following in the beginnig/as the first
command:

Workbboks(namethefullpath & "\" & "Employees.xlsx").Open
Workbooks("March.xls).Activate

then run the macro

Hope I didn't miss sth.

;-)
 
Hi Jarek,
What you call "March.xls" is each month different, thus I cannot insert:
Workbooks("March.xls).Activate
since I don't know the name of the file until I actually get it and open it.

To re-itereate:
1. I manually open whatever the mothly file is called
2. I then want to run a PERSONAL.xls "macro1" against that opened file
BUT
FIRST I have to open "Employees.xlsx".
So the PERSONAL.xlsx "macro1" needs to have as its first line:
Workbooks("Employees.xlsx").Open
BUT NOW I have to make this "inactive" and run the rest of the 'MACRO1'
against the other first opened workbook.

Understand??
 
presume your Personal.xls is hidden

then after Workbooks("Employees.xlsx").Open

put this

ActiveWindow.ActivateNext

does this help?
 
Hi Helmut

One solution would be to open the monthly workbook as part of the macro as
follows and assign it to a variable as follows:

Dim wkbThisMonthsWorkbook As Workbook
Dim bOpened As Boolean

bOpened = Application.FindFile
If Not bOpened Then Exit Sub

Set wkbThisMonthsWorkbook = Workbooks(Workbooks.Count)

Call Workbooks.Open("Employees.xlsx")

wkbThisMonthsWorkbook.Activate

HTH
 
Back
Top