【发布时间】:2019-02-13 22:41:36
【问题描述】:
我在其他 2 个文件中的以下代码工作正常,但由于某种原因,我在运行时收到此 SaveAs of ojbect 错误。更奇怪的是,如果我调试并再次点击运行,它就会完成而没有错误。
Sub saveWorksheet()
Set report = ActiveWorkbook.Worksheets("Report")
sb_Copy_Save_Worksheet_As_Workbook
End Sub
Sub sb_Copy_Save_Worksheet_As_Workbook()
Dim wb As Workbook
Set wb = Workbooks.Add
ThisWorkbook.Sheets("Report").Copy Before:=wb.Sheets(1)
wb.Sheets(1).Name = Day(Now) & "-" & MonthName(Month(Now), True) & "-" &
Year(Now) & " " & getTime
Application.DisplayAlerts = False
wb.Sheets("Sheet1").Delete
wb.SaveAs "\\Naeast.ad.jpmorganchase.com\amerawm$\AM\NAAMSHARE13\AM
Oversight and control\DE Program Team\User Tools\14. Daily
Trackers\Compliance Check Archive\" & Month(Date) & "-" & Day(Date) & "-"
& Year(Date) & "-" & "New_Compliance_Check.xlsx"
wb.Close
Application.DisplayAlerts = True
End Sub
Function getTime()
If Len(Time) = 10 Then
getTime = Left(Time, 1) & "." & Mid(Time, 3, 2)
Else
getTime = Left(Time, 2) & "." & Mid(Time, 4, 2)
End If
End Function
突出显示的调试行是:
wb.SaveAs "\\Naeast.ad.jpmorganchase.com\amerawm$\AM\NAAMSHARE13\AM Oversight and control\DE Program Team\User Tools\14. Daily Trackers\Compliance Check Archive\" & Month(Date) & "-" & Day(Date) & "-" & Year(Date) & "-" & "New_Compliance_Check.xlsx"
编辑:我根据您的建议更新了代码,但同样的问题。
wb.Sheets("Sheet1").Delete
wb.Activate
wb.SaveAs "\\Naeast.ad.jpmorganchase.com\amerawm$\AM\NAAMSHARE13\AM
Oversight and control\DE Program Team\User Tools\14. Daily
Trackers\Compliance Check Archive\" & Month(Date) & "-" & Day(Date) & "-" &
Year(Date) & "-" & "New_Compliance_Check.xlsx"
wb.Close
【问题讨论】:
-
一个快速的事情是让 DisplayAlerts 保持打开状态,看看是否会出现警报。特别是,如果文件已存在,则可能会发出警报。