我可以发誓,这是以前工作 - 但由于某种原因,这似乎并没有工作了。我正在尝试使用活动工作表(同样,这可能不是非常漂亮或干净,但对于VBA我还是很新的),将它复制到新的工作表中,在新的工作表中,我想打开Excel保存为对话框,并在工作表被保存(以CSV)格式,我想工作簿关闭(或者即使不关闭),至少用户返回到原来的工作簿,并结束子VBA复制方法保持失败?
Sub saveExportAs()
Application.CutCopyMode = False
Sheets("load").Select
ActiveWorkbook.Activate
Sheets("load").Copy
Dim varResult As Variant
Dim ActBook As Workbook
'display the save as dialog
varResult = Application.GetSaveAsFilename(InitialFileName:="\\network\folder\upload_" & Format(Date, "yyyy-mm-dd") & ".csv", FileFilter:= _
"Comma Delimited/Upload Files (*.csv),*.csv", Title:="Save Upload File")
'check to make sure the user didn't cancel
If varResult <> False Then
ActiveWorkbook.saveAs Filename:=varResult, _
FileFormat:=xlCSV
Exit Sub
End If
End Sub
你是否循环了代码?哪一部分你收到错误? –
我有,它挂在表格(“负载”)。复制 – cespeedish
如果你拿出第二和第三行('.Select'和'.Activate')有帮助吗?选择工作表后,为什么要激活活动工作簿?另外请注意,最好的做法是[避免使用'.Select' /'.Activate'](https://stackoverflow.com/questions/10714251)。 – BruceWayne