我在Mac上的Excel VBA中使用Workbooks.Open
方法将数据从一张工作表中的行复制到另一张工作表中。我的代码是几年前编写的,并且一直工作到Office 365
。宏很长,因此我不会在此处发布所有宏。我似乎遇到问题的代码如下:
FileToOpen = Application.GetOpenFilename
Workbooks.Open(FileToOpen)
每运行一次宏,代码就会工作一次。我第一次运行该文件时无法打开。下次可以。每当我运行它时,它都会起作用。
我为FileToOpen
设置了一个监视,每次调试都得到相同的结果。
有什么想法吗?
答案 0 :(得分:0)
您正在调用不带FileToOpen值的过程, 第二次,fileToOpen的值为
'1st FileToOpen = ""
FileToOpen = Application.GetOpenFilename Workbooks.Open(FileToOpen)
'第2次打开文件时有一个值,这就是它起作用的原因! 解决方案:
dim FileToOpenPath as string
FileToOpenPath = Application.GetOpenFilename()
FileToOpen = Workbooks.Open(FileToOpenPath)