【发布时间】:2020-06-08 18:58:27
【问题描述】:
VBA 新手,之前没有编码经验。
由于新文件中运行的宏存在问题,我正在使用 SaveCopyAs 创建备份副本以将扩展名更改为 .xlsx。此代码可以正确创建备份文件,但是当我尝试打开这个新文件时,我收到运行时错误“1004”对象“工作簿”的“打开”方法失败。
我尝试了几种不同的方式来写这个,但没有运气。我认为这是导致问题的动态部分。请告知打开新文件需要做什么。
Sub Refresh()
Dim currwbk As Workbook
Dim FilePath As String
Dim newFileName As String
FilePath = ThisWorkbook.Path
T = Format(Now, "mmm dd yyyy hh mm ss")
Set currwbk = Workbooks("467_Report_Active.xlsm")
Application.ScreenUpdating = False
newFileName = FilePath & " " & T & ".xlsx"
Application.DisplayAlerts = False
currwbk.SaveCopyAs newFileName
Application.DisplayAlerts = True
Workbooks.Open (newFileName)
End Sub
【问题讨论】:
-
SaveCopyAs无法更改扩展名。 -
啊,好吧,它现在可以工作了,但是有没有办法保存工作簿,这样宏就不会在备份副本中继续存在?
-
SaveAs并更改文件类型? -
代码似乎找不到原始工作簿。我已经用几种不同的方式重写了这个,但出现了不同的错误。