R
Rob Kings
Hi there
I'm having some trouble with a bit of VBA code, and its confusing me.
The code is (something like)
sThisBook = ActiveWorkbook.Name
Set wkbSource = Workbooks.Open(sPath)
If Len(sThisBook) > 0 Then
'... this makes the original workbook active
Workbooks(sThisBook).Activate
End If
(I've precied it slightly)
What I find is that:
a) If I am running this code in the context of a new blank "Book1.xls" then
after the other workbook has been opened only that book is open.
i.e.
workbooks.count is 1 and workbooks(1).name is the short version of the
variable sPath
Hence
Workbooks(sThisBook).Activate
fails with an error. Since its doing
Workbooks("Book1.xls").Activate
and that is no longer open.
However,
b) If I close book1 and click New so that I have "Book2.xls" then after the
..Open statement I have 2 workbooks
and the .Activate does work since "Book2.xls" IS still open.
Is Excel implicitly closing Book1 or am I missing something?
Perplexed in England
Rob
I'm having some trouble with a bit of VBA code, and its confusing me.
The code is (something like)
sThisBook = ActiveWorkbook.Name
Set wkbSource = Workbooks.Open(sPath)
If Len(sThisBook) > 0 Then
'... this makes the original workbook active
Workbooks(sThisBook).Activate
End If
(I've precied it slightly)
What I find is that:
a) If I am running this code in the context of a new blank "Book1.xls" then
after the other workbook has been opened only that book is open.
i.e.
workbooks.count is 1 and workbooks(1).name is the short version of the
variable sPath
Hence
Workbooks(sThisBook).Activate
fails with an error. Since its doing
Workbooks("Book1.xls").Activate
and that is no longer open.
However,
b) If I close book1 and click New so that I have "Book2.xls" then after the
..Open statement I have 2 workbooks
and the .Activate does work since "Book2.xls" IS still open.
Is Excel implicitly closing Book1 or am I missing something?
Perplexed in England
Rob