Приложение Excel

Excel workbook

Элемент производит подключение к приложению Microsoft Excel. Параметры подключения указываются в свойствах элемента.

В сценарии автоматизации Приложение Excel выступает контейнером для других элементов Excel. В конце работы с файлом рекомендуется использовать элемент Сохранить документ, чтобы все изменения применились.

Свойства

Символ * в названии свойства указывает на обязательность заполнения. Описание общих свойств см. в разделе Свойства элемента.

Группа свойств Excel

  1. Драйвер [LTools.Office.Model.InteropTypes] — тип драйвера подключения. Драйвер определяет особенности работы с файлом. Щелкните выпадающий список значений, чтобы выбрать тип: DX или Interop. По умолчанию установлен DX (DevExpress). Сравнительная таблица.

    ХарактеристикаDXInterop

    Тип подключения

    Работает с файлом без Microsoft Office. Это означает, что Microsoft Excel на компьютере робота может отсутствовать

    Работает с файлом через запуск приложения Microsoft Excel

    ОС

    Windows, Linux, MacOS

    Только Windows

    Поддерживает макросы и скрипты VBA

    Нет

    Да

    Скорость работы

    Выше

    Ниже

  2. Путь к файлу [String] — путь к файлу документа Excel. Пример: @"C:\folder\file.xlsx". Символ @ используется для экранирования обратного слеша.

  3. Пароль [String] — пароль для открытия защищенного файла Excel.

  4. Пароль (зашифрованный) [SecureString] — зашифрованный пароль от файла. В целях безопасности пароль в формате SecureString не хранится в открытом виде. Получить его можно, например, из программы «Диспетчер учетных данных» (Credential Manager), после чего вставить в это поле.

  5. Проверять файл [Boolean] — определяет, нужно ли проверять наличие указанного файла Excel. Возможные значения:

    • чекбокс установлен — если проверка обнаружит, что указанного файла не существует, робот завершит работу с ошибкой.

    • чекбокс снят — если файла не существует, робот выполнит работу без ошибок. При попытке записать информацию в несуществующий файл, будет создан файл Excel с указанным именем. В конце работы этот файл потребуется сохранить.

  6. Массив байтов [byte[]] — массив байтов документа. Если указан массив, то свойство «Путь к файлу» заполнять не нужно. Свойство работает с обоими драйверами.

  7. Присоединяться [Boolean] — только для Interop. Установка чекбокса позволяет присоединиться к файлу, который открыт вручную. Закрывать такой файл тоже придется вручную.

  8. Открывать только на чтение [Boolean] — только для Interop. Определяет, нужно ли открывать указанный файл только для чтения. По умолчанию чекбокс не установлен. Настройка будет проигнорирована в следующих случаях:

    • если включено свойство «Присоединяться»;

    • если указан массив байтов;

    • если используется файл в формате текста с разделителями.

  9. Загружать AddIn-ы [Boolean] — только для Interop. Определяет, нужно ли переподключать установленные дополнения (надстройки). Общие сведения о надстройках Excel приведены здесь. Подробнее о работе этого свойства см. ниже, в подразделе Надстройки Excel.

  10. Отображать Excel [Boolean] — только для Interop. Если параметр включен, на экране будет отображаться приложение Excel.

  11. R1C1 [Boolean] — только для DX. Установка чекбокса позволяет указывать диапазон ячеек в элементах Excel, используя стиль ссылок R1C1. По умолчанию чекбокс выключен, а диапазоны указываются в формате A1. При использовании стиля R1C1, убедитесь, что он также установлен в файле Excel — подробнее см. в подразделе Стиль ссылок R1C1.

Группа свойств Csv

  • Разделитель [String] — разделитель колонок в файле с расширением *.csv. По умолчанию ";". Для режима Interop необходима кодировка UTF-8 BOM или UTF-16 LE.

Примечания к свойствам

Стиль ссылок R1C1

Excel может использовать стиль ссылок R1C1, в котором строки и столбцы представлены в виде чисел на рабочем листе. Стиль ссылок R1C1 полезен для вычисления позиций строк и столбцов в макросах. В стиле R1C1 Excel указывает расположение ячейки с "R", за которой следует номер строки, и "C", за которой следует номер столбца.

Чтобы установить/снять в Excel стиль R1C1, выполните действия:

  1. Запустите Microsoft Excel.

  2. В меню Файл щелкните пункт Параметры.

  3. Откройте вкладку Формулы.

  4. В разделе Работа с формулами щелкните, чтобы установить/снять флажок Стиль ссылок R1C1, затем нажмите кнопку ОК.

При установке флажка Стиль ссылок R1C1 будет изменен стиль ссылок заголовков строк и столбцов, а ссылки на ячейки из стиля A1 изменятся на стиль R1C1.

Надстройки Excel

Чтобы воспользоваться установленными надстройками в Excel, их требуется перезагрузить. За это отвечает свойство элемента Загружать AddIn-ы (Interop): с его помощью будет совершена попытка переподключить все активные надстройки. Список активных надстроек можно просмотреть в Excel в меню Файл > Параметры > Надстройки.

Однако бывают случаи, когда использование свойства не помогает загрузить какую-то надстройку. Например, если для нее нужны права администратора*, или если есть конфликт с центром безопасности MS Office.

*Например, для установки/удаления надстроек COM нужны права администратора. Свойство Загружать AddIn-ы не сможет их установить.

Запуск через Приложение Excel

Если запуск робота не приводит к перезагрузке надстроек, то, вероятно, происходит вмешательство центра безопасности MS Office. Например, источник файла расценивается как неблагоприятный. В этом случае следует правильным образом сконфигурировать MS Office: необходимо, чтобы при вызове приложения по ярлыку (Пуск > Программы > Excel) оно загружало требуемые надстройки без ограничений от центра безопасности. Тогда Еxcel, запущенный через контейнер Приложение Excel, тоже загрузит нужные надстройки.

Запуск из командной строки

Запуск Excel из командной строки обычным образом не загружает все надстройки, поэтому меню и функциональность приложения могут отличаться. Чтобы этого не происходило, команда запуска должна содержать дополнительный ключ /x:

"/x Starts a new instance (a separate process) of Excel."

Пример**:

"excel.exe /x "c:\My Folder\book1.xlsx""

Если к командной строке добавить этот переключатель, то вид Еxcel, запущенный из командной строки, будет соответствовать внешнему виду приложения, запущенному через контейнер Приложение Excel (Interop). Подробнее про особенности командной строки можно прочитать здесь.

**Вся команда в элементе Командная строка должна быть в кавычках.

Только код

Пример использования элемента в процессе с типом Только код (Pure code):

LTools.Office.ExcelApp app = LTools.Office.ExcelApp.Init(wf, "file", ";", LTools.Office.Model.InteropTypes.DX);
LTools.Office.ExcelApp app = LTools.Office.ExcelApp.Init(wf, System.IO.File.ReadAllBytes("file"), ";", LTools.Office.Model.InteropTypes.DX);

Last updated