Функция _ExcelBookNew

         Описание функции


_ExcelBookNew

Создает новую рабочую книгу и возвращает экземпляр ее объекта (ссылку на COM объект "Excel.Application")

#include <Excel.au3>
_ExcelBookNew([$fVisible = 1])

Параметры

$fVisible [необязательный] Флаг, определяющий отображение созданной книги на экране/панели задач (0=невидима, 1=видима)

Возвращаемое значение

Успех:Возвращает экземпляр объекта созданной рабочей книги Excel
Ошибка:Возвращает 0, Устанавливает значение флага ошибки @error:
@error:0 - Скрипт завершил работу без ошибок
1 - Ошибка OLE/COM ($oExcel)
2 - Недопустимое значение параметра ($fVisible)

Примечания

Чтобы отобразить скрытую от пользователя рабочую книгу Excel следует изменить ее свойство "Visible" (см. Пример 3)

См. также

_ExcelBookAttach

Пример

; ************************************************
; Пример 1 - Создает рабочую книгу Excel
; ************************************************
#include <Excel.au3>

$oExcel = _ExcelBookNew()
    If Not @error Then MsgBox(4096, "_ExcelBookNew | Пример 1", "Книга создана!")

; ************************************************
; Пример 2 - Создает и открывает скрытую от пользователя рабочую книгу Excel
; ************************************************
#include <Excel.au3>

$oExcel = _ExcelBookNew(0) ; Переменная $oExcel получит экземпляр созданной рабочей книги, но она не отобразится на экране/панели задач
    If Not @error Then MsgBox(4096, "_ExcelBookNew | Пример 2", "Книга создана, открыта в памяти, но не отображается на экране," & @CRLF & " см.Диспетчер задач => Список активных процессов => EXCEL.EXE")
Run(@SystemDir & "\taskmgr.exe") ; Для наглядности примера запускаем "taskmgr.exe" (Диспетчер задач) чтобы можно было увидеть процесс
    Sleep(5000) ; Пауза 5 сек. - этого достаточно чтобы пользователь увидел открытую книгу в процессах

MsgBox (0, "_ExcelBookNew | Пример 2", "Нажмите ОК для того чтобы закрыть созданную книгу(выгрузить её из памяти)")
_ExcelBookClose($oExcel, 0, 0) ; Закрываем книгу без сохранения и оповещений Excel.

; ************************************************
; Пример 3 - Создает и открывает скрытую от пользователя рабочую книгу Excel, потом отображает её
; ************************************************
#include <Excel.au3>

$oExcel = _ExcelBookNew(0) ; Переменная $oExcel получит экземпляр созданной рабочей книги, но она не отобразится на экране/панели задач
    If Not @error Then MsgBox(4096, "_ExcelBookNew | Пример 2", "Скрытая книга создана..." & @CRLF & " см.Диспетчер задач => Список активных процессов => EXCEL.EXE")
Run(@SystemDir & "\taskmgr.exe") ; Для наглядности примера запускаем "taskmgr.exe" (Диспетчер задач) чтобы можно было увидеть процесс
    Sleep(5000) ; Пауза 5 сек. - этого достаточно чтобы пользователь увидел открытую книгу в процессах

MsgBox (0, "_ExcelBookNew | Пример 2", "Нажмите ОК для того чтобы отобразить созданную книгу")
$oExcel.Visible = 1 ; Свойство Visible отвечает за отображение формы рабочей книги на экране/панели задач (1=отображается, 0=скрывается)