【发布时间】:2019-12-04 20:41:08
【问题描述】:
我有一个在 Excel 2010 中运行良好的宏。我现在尝试使用 Excel 2016 / 365 运行此文件,但宏弹出运行时错误 438:对象不支持这个属性或方法。它基本上关闭并重新打开我正在处理的当前 Excel 文件,忽略任何要保存的消息,无论我是否是只读的。如果有人可以提供帮助,那就太好了。代码如下。提前致谢。
Sub reopen2()
Application.DisplayAlerts = False
Dim wb As Excel.Workbook
Set wb = ThisWorkbook
Dim pth As String
pth = wb.FullName
Application.OnTime Now + TimeValue("00:00:01"), Application.Workbooks.Open(FILENAME:=pth, Notify _
:=False)
wb.Close (False)
Application.DisplayAlerts = True
End Sub
【问题讨论】:
-
嗯。 Office 2016(但不是 365)中没有复制。这在新工作簿中是否不起作用(确保先保存)。
-
它肯定抱怨 Application.Workbooks.Open(),过程名称必须作为字符串提供并且不能带参数。 docs.microsoft.com/en-us/office/vba/api/…
-
这个错误出现在哪个代码行?