VBScript 要求我覆盖 Excel 文件,尽管 DisplayAlerts = False
VBScript asks me to overwrite Excel file despite DisplayAlerts = False
我想通过 VBScript 从 Excel 文件中 运行 一个宏,这样我就可以通过任务计划程序 运行 该脚本。
该部分有效,但当它尝试保存文件时,它总是询问 "File already exists, want to overwrite? Yes, No, Cancel"。
在研究过程中,每个线程都说将 DisplayAlerts 设置为 False,我已经这样做了,但没有用。如果我只使用 .Save,那么它会将它保存到我的默认文档目录 - 而不是共享点。
strPath = "\ecs.zspi.company.de@SSL\DavWWWRoot\Folder\Test.xlsm"
strMacro = "VV.VVImport2" '
Set objApp = CreateObject("Excel.Application")
objApp.Visible = True
objApp.DisplayAlerts = False
objApp.AskToUpdateLinks = False
objApp.AlertBeforeOverwriting = False
objApp.FeatureInstall = msoFeatureInstallNone
Set wbToRun = objApp.Workbooks.Open(strPath)
objApp.Run strMacro
wbToRun.SaveAs "\ecs.zspi.company.de@SSL\DavWWWRoot\Folder\Test.xlsm"
wbToRun.Close False
objApp.Quit
它应该在不提示的情况下将文件保存到原始位置。但我总是收到警告框 "File already exists, want to overwrite? Yes, No, Cancel".
您需要将工作簿的.Saved
属性设置为True
...
wbToRun.SaveAs "\ecs.zspi.company.de@SSL\DavWWWRoot\Folder\Test.xlsm"
wbToRun.Saved = True
wbToRun.Close False
objApp.Quit
似乎 SaveAs
方法没有将 属性 设置为 True
,我以前遇到过这个问题,这为我解决了。
我想通过 VBScript 从 Excel 文件中 运行 一个宏,这样我就可以通过任务计划程序 运行 该脚本。
该部分有效,但当它尝试保存文件时,它总是询问 "File already exists, want to overwrite? Yes, No, Cancel"。
在研究过程中,每个线程都说将 DisplayAlerts 设置为 False,我已经这样做了,但没有用。如果我只使用 .Save,那么它会将它保存到我的默认文档目录 - 而不是共享点。
strPath = "\ecs.zspi.company.de@SSL\DavWWWRoot\Folder\Test.xlsm"
strMacro = "VV.VVImport2" '
Set objApp = CreateObject("Excel.Application")
objApp.Visible = True
objApp.DisplayAlerts = False
objApp.AskToUpdateLinks = False
objApp.AlertBeforeOverwriting = False
objApp.FeatureInstall = msoFeatureInstallNone
Set wbToRun = objApp.Workbooks.Open(strPath)
objApp.Run strMacro
wbToRun.SaveAs "\ecs.zspi.company.de@SSL\DavWWWRoot\Folder\Test.xlsm"
wbToRun.Close False
objApp.Quit
它应该在不提示的情况下将文件保存到原始位置。但我总是收到警告框 "File already exists, want to overwrite? Yes, No, Cancel".
您需要将工作簿的.Saved
属性设置为True
...
wbToRun.SaveAs "\ecs.zspi.company.de@SSL\DavWWWRoot\Folder\Test.xlsm"
wbToRun.Saved = True
wbToRun.Close False
objApp.Quit
似乎 SaveAs
方法没有将 属性 设置为 True
,我以前遇到过这个问题,这为我解决了。