Как закрыть файл Excel из VBScript без запроса?

Вопрос:

У меня есть VB Script, который открывает файл 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

Лучший ответ:

Это должно сделать это:

objExcel.DisplayAlerts = False

objWorkbook.Close False 

Ответ №1

Вы пробовали:

    objWorkbook.Close False

Ответ №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

Попробуйте это, гораздо проще!

FILENAME CMDS DDE 'Excel|system';

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

Извините, что использует SAS.

Оцените статью
TechArks.Ru
Добавить комментарий