_ExcelBookClose
Закрывает открытую рабочую книгу Excel.
#include <Excel.au3>
_ExcelBookClose($oExcel [, $fSave = 1 [, $fAlerts = 0]])
Параметры
$oExcel | Ссылка на COM-объект "Excel.Application" полученная ранее вызванными _ExcelBookOpen(), _ExcelBookNew(), или _ExcelBookAttach() |
$fSave |
[необязательный] Флаг определяющий сохранение рабочей книги Excel перед закрытием (0=не сохранять, 1=сохранять) (по умолчанию = 1) |
$fAlerts |
[необязательный] Флаг определяющий наличие оповещений/запросов Excel (0=отключены, 1=включены) (по умолчанию = 0) |
Возвращаемое значение
Успех: | Возвращает 1 |
Ошибка: | Возвращает 0, Устанавливает значение флага ошибки @error: |
@error: | 0 - Скрипт завершил работу без ошибок |
1 - Ошибка OLE/COM ($oExcel), возможно указанный объект не существует. | |
2 - Объект открыт только для чтения |
Примечания
Внимание!!! переменная переданная в параметр $oExcel по прежнему будет содержать ссылку на COM объект Excel.Application, но после закрытия книги - закрывается и подключение к COM-серверу ее объекта, ссылка на UUID подключения становится недействительной.Пример
; ***************************************************************
; Пример 1 - Открывает новую рабочую книгу Excel и закрывает её с параметрами "по умолчанию"
; ***************************************************************
#include <Excel.au3>
$oExcel = _ExcelBookNew() ; Создаём новую рабочую книгу Excel
_ExcelWriteCell($oExcel, "Изменения", "A2") ; Для наглядности примера вносим изменения в ячейку "A1"
If Not @error Then MsgBox(4096, "_ExcelBookClose | Пример 1", "Нажмите ОК чтобы закрыть книгу")
_ExcelBookClose($oExcel, 0, 1) ;Этот метод при указанных параметрах закрывает рабочую книгу, если в ней были сделаны изменения - вызывается стандартный запрос Excel на сохранение изменений
; ***************************************************************
; Пример 2 - Открывает новую рабочую книгу Excel и закрывает её, сохраняя изменения, без каких либо оповещений Excel
; ***************************************************************
#include <Excel.au3>
$oExcel = _ExcelBookNew() ; Создаём новую рабочую книгу Excel
_ExcelWriteCell($oExcel, "Изменения", "A2") ; Для наглядности примера вносим изменения в ячейку "A1"
If Not @error Then MsgBox(4096, "_ExcelBookClose | Пример 2", "Нажмите ОК чтобы закрыть книгу")
_ExcelBookClose($oExcel, 1, 0) ;Этот метод при указанных параметрах закрывает рабочую книгу, сохраняет изменения без каких либо запросов Excel