My vba script in myMacro.xls Workbooks.Open
Method work well as below,
Workbooks.Open Filename:=\"D:\\ExcelMacroProj\\myTest.xl
Filename
is relative to the current Excel directory (which is different from the directory in which an opened document is).
You change the current directory by using ChDir "x:\new\path"
.
But what you actually want to do is:
Workbooks.Open Filename:=EnsureSlash(ThisWorkbook.Path) & "myTest.xls", ReadOnly:=True
, where EnsureSlash
is your custom function that appends a backslash (\
) to the end of the string, if it's not already there (because ThisWorkbook.Path
ends with a slash when the path is the root directory, and doesn't otherwise).