小编Vul*_*hil的帖子

ExecuteExcel4Macro,包含撇号的路径

这将是我在这个网站上的第一个问题,所以请耐心等待。

因此,我尝试利用 ExecuteExcel4Macro 函数来引用不同工作簿中的值,而不必打开工作簿,因为它必须循环遍历目录中的许多工作簿,并引用每个工作簿上的相同单元格。

问题出现在这一行:

wbRef = "'" & folderName & "[" & myDir & "]" & thatSheet & "'!"
Run Code Online (Sandbox Code Playgroud)

这会导致这一行出现运行时错误 1004:

month = CStr(ExecuteExcel4Macro(wbRef & Range("D4").Address(, , xlR1C1)))
Run Code Online (Sandbox Code Playgroud)

如果,比方说,

folderName = "C:\test\Accounts\O'Malley\Summary\"
Run Code Online (Sandbox Code Playgroud)

,出现错误。

由于folderName 包含撇号,ExecuteExcel4Macro 不会将wbRef 识别为文件夹的路径,而是在路径字符串中过早关闭该路径,因此导致错误。

所以我的问题是:

有没有办法绕过这个撇号,而不必更改文件夹名称,也不必打开子文件夹中的每个单独的工作簿?

我尝试过使用双引号,但似乎没有成功。

下面是我的代码草稿,或者至少是上下文。

Sub refMonth()

Dim thisWb as Workbook, folderName as String, myDir as String, wbRef as String, thatSheet as String, month as String

Set thisWb = ActiveWorkbook

folderName = SelectFolder(thisWb)

If folderName = vbNullString Then GoTo Done

myDir = Dir(folderName …
Run Code Online (Sandbox Code Playgroud)

excel vba excel-4.0

5
推荐指数
1
解决办法
1138
查看次数

标签 统计

excel ×1

excel-4.0 ×1

vba ×1