"错误2023"使用" ExecuteExcel4Macro"在获取值时

时间:2016-05-24 08:21:51

标签: excel vba excel-vba

我在其中维护一个带有VBA的Excel工作簿。

使用" ExecuteExcel4Macro"从已关闭的Excel工作簿中获取值时,VBA失败。

从中获取值的工作簿保存在Intranet网页上。

GetValue = ExecuteExcel4Macro(arg)

这行代码失败。 "错误2023"归还。

通过修改我发现的代码:

tmp = GetValue(path, file, sheet, ref)
' tmp gets the "Error 2023"-return.
Debug.Print tmp

' Gets the expected data-value from the excel-sheet.
Datum_Homepage = GetValue(path, file, sheet, ref)

如果您将其称为两次次,则第一次通话将获得"错误2023"第二个调用获得预期值(日期)。

这怎么可能?

GetValue函数的完整代码:

Public Function GetValue(path, file, sheet, ref) As Variant

    Dim arg As String

    If Right(path, 1) <> "/" Then path = path & "/"

    arg = "'" & path & "[" & file & "]" & sheet & "'!" & Range(ref).Address(, , xlR1C1)

    GetValue = ExecuteExcel4Macro(arg)

End Function

0 个答案:

没有答案