Функция _ExcelWriteFormula

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


_ExcelWriteFormula

Назначение формулы в синтаксисе VBA ячейке активного листа открытой рабочей книги Excel
Внимание!!! _ExcelWriteFormula() - предназначена для записи формул в синтаксисе VBA
Если-же вы хотите записывать формулы в привычном для Вас виде (так-же как в Excel) используйте _ExcelWriteCell() (см.Пример 1)

#include <Excel.au3>
_ExcelWriteCell($oExcel, $sValue, $sRangeOrRow [, $iColumn = 1])

Параметры

$oExcel Ссылка на COM-объект "Excel.Application" полученная ранее вызванными _ExcelBookOpen(), _ExcelBookNew(), или _ExcelBookAttach()
$sValue Записываемое значение
$sRangeOrRow Адрес ячейки в формате A1, или номер целевой строки - в случае если адрес целевой ячейки указывается в формате R1C1
$iColumn [необязательный] Номер столбца, если адрес целевой ячейки указывается в формате R1C1(номер строки\номер столбца) (по умолчанию = 1)

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

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

Примечания

Внимание!!! документы разных форматов MS Office имеют различные ограничения по количеству столбцов и строк:
*.xls (формат xlExcel8, стандартный для MS Office 2003,97,95) имеет ограничения в 255 столбцов 65 535 строк
*.xlsx,*.xlsb,*.xlsm (XML-форматы MS Office 2007-2010) имеют ограничения в 16 384 столбца и 1 048 576 строк

См. также

_ExcelWriteCell

Пример

; ********************************************
; Пример 1 - Использование метода _ExcelWriteCell для записи формулы суммы в ячейку активного листа целевой рабочей книги Excel
; ********************************************

#include <Excel.au3>

Local $oExcel = _ExcelBookNew() ; Создаем новую рабочую книгу

; Циклически заполним столбец значениями
For $i = 1 To 20
    _ExcelWriteCell($oExcel, $i, $i, 1) ; Запись в ячейку
Next

_ExcelWriteCell($oExcel, "=СУММ(A1:A20)", 1, 3) ; Запись в ячейку текста формулы

MsgBox(4096, "_ExcelWriteCell | Пример 1", "Демонстрация завершена, нажмите ОК")