如何在没有用户提示保存文件的情况下保存Excel?

嗨我写了一些代码使用VBScript在Excel表单如下。 现在,每次脚本完成处理时,它都会提示用户Save 。但是我不想要这个,而是希望它自动保存,而不会提示。

  Option Explicit Dim objExcel1,strPathExcel1,objSheet1,objSheet5 Set objExcel1 = CreateObject("Excel.Application")'Object for Condition Dump strPathExcel1 = "D:\VA\GE_Wing_To_Wing_Report.xlsx" objExcel1.Workbooks.Open strPathExcel1 Set objSheet1 = objExcel1.ActiveWorkbook.Worksheets(1) Set objSheet5 = objExcel1.ActiveWorkbook.Worksheets(5) '===================================================================================== 'Here Bad sheet will be copied by the data from First sheet master data sheet '===================================================================================== ParentPIDFromMasterSheet objSheet1,objSheet5 '===================================================================================== 'Here Bad sheet will be copied by the data from First sheet master data sheet '===================================================================================== BadDataSelectionDel objSheet5 '======================= objExcel1.ActiveWorkbook.SaveAs strPathExcel1 objExcel1.Workbooks.close objExcel1.Application.Quit '====================== 

UNTESTED(试试这个)

您需要设置您的工作簿,然后将其保存后closures它。 在使用之后,清理代码最后也是一个很好的做法。 🙂

 Option Explicit Dim objExcel1, objWB, strPathExcel1, objSheet1, objSheet5 Set objExcel1 = CreateObject("Excel.Application") 'Object for Condition Dump strPathExcel1 = "D:\VA\GE_Wing_To_Wing_Report.xlsx" Set objWB = objExcel1.Workbooks.Open(strPathExcel1) Set objSheet1 = objWB.Worksheets(1) Set objSheet5 = objWB.Worksheets(5) '===================================================================================== 'Here Bad sheet will be copied by the data from First sheet master data sheet '===================================================================================== ParentPIDFromMasterSheet objSheet1, objSheet5 '===================================================================================== 'Here Bad sheet will be copied by the data from First sheet master data sheet '===================================================================================== BadDataSelectionDel objSheet5 '======================= objWB.Save objWB.Close objExcel1.Quit '~~> Cleanup Set objSheet1 = Nothing Set objSheet5 = Nothing Set objWB = Nothing Set objExcel1 = Nothing '======================