如何在不提示的情况下从VBScript关闭Excel文件?

时间:2014-01-07 18:32:40

标签: excel vbscript

我有一个VB脚本,可以打开一个Excel文件并运行一个宏。我试图关闭此excel文件(不保存任何更改),而不提示保存。我已将'已保存'属性设置为true。但我仍然会在“保存”窗口中提示我。我读到某处我必须禁用宏。不确定怎么样? 我想关闭excel文件而不保存而不提示。

Dim objExcel, objWorkbook 

Set objExcel = CreateObject("Excel.Application")
Set objWorkbook = objExcel.Workbooks.Open("c:\aaa\Test.xls")
objExcel.Visible = True
objExcel.Run "Extract_PLStatements"
objworkbook.Saved = True
objWorkbook.Close

objExcel.Quit

Set objWorkbook = Nothing
Set objExcel = Nothing

WScript.Quit

4 个答案:

答案 0 :(得分:19)

这应该这样做:

objExcel.DisplayAlerts = False

objWorkbook.Close False 

答案 1 :(得分:1)

你试过了吗?

    objWorkbook.Close False

答案 2 :(得分:-2)

试试这个。这将关闭所有excel实例而不要求保存。但是,您将丢失任何未保存的数据。

Do While  True  
    Dim objExcel
    On Error Resume Next
    Set objExcel = GetObject(,"Excel.Application")
    If Err.Number <> 0 Then
        Exit Do
    End If
    On Error GoTo 0
    objExcel.DisplayAlerts = False
    objExcel.Quit
    Set objExcel = nothing
Loop 

答案 3 :(得分:-3)

尝试这个,更容易!

FILENAME CMDS DDE 'Excel|system'; 

DATA _NULL_; 
FILE CMDS; 
PUT '[Workbook.Activate("FILENAME.XLS")]';
PUT "[SAVE()]";
PUT "[CLOSE("'"'"C:\FILENAME.XLS"'"'")]"; 
RUN;

抱歉这是使用SAS。