Шаг 11.
Вкладка Servers. Компонент TExcelApplication
На этом шаге мы рассмотрим компонент TExcelApplication.
Компонент TExcelApplication - это сервер, с помощью которого осуществляется доступ к
объекту Appication и запускается приложение Excel.
Основные свойства компонента TExcelApplication аналогичны свойствам компонента TWordApplication.
Изучив основные 4 свойства данного компонента, создадим приложение, запускающее приложение Microsoft Excel и
отображающее его на экране монитора. Результат работы продемонстрирован на рисунке:
Рис.1. Запуск приложения MS Excel
Текст этого примера можно взять
здесь
Рассмотрим некоторые другие свойства и методы данного компонента.
- Добавить новую книгу методом Add
ExcelApplication1.Workbooks.Add(EmptyParam,lcid);
В первый параметр этого метода можно передать строку, содержащую имя файла книги.
lcid - идентификатор
локализации, в основном равен 0, но целесообразней передавать значения предназначенных для этого констант:
LOCALE_USER_DEFAULT и
LOCALE_SYSTEM_DEFAULT - идентификаторы текущего пользователя и системы
соответственно.
- Добавить новый лист в существующую книгу методом Add объекта Workbook
ExcelApplication1.Worksheets.Add(Before,after,count,type,lcid);
где
- before,after - объекты листа, после которого и перед которым осуществляется вставка, обычно
достаточно задать один параметр,
- count - определяет количество вставляемых листов,
- type – тип вставки, при EmptyParam пустой, новый лист.
- Установление числа добавляемых листов в создаваемой книге с помощью свойства SheetsInNewWorkbook
ExcelApplication1.SheetsInNewWorkbook[lcid]:=1;
- Сохранить книгу несколькими способами
//Метод Save.
i:=5;
ExcelApplication1.Workbooks[i].Save(lcid);
//Метод SaveAs.
i:=5;
ExcelApplication1.Workbooks[i].SaveAs(FileName:OleVariant; FileFormat:OleVariant;
Password:OleVariant; WriteResPassword:OleVariant; ReadOnlyRecomended:OleVariant;
CreateBackUp:OleVariant; AccesMode:XLSaveAsAccessMode;
ConflictResolution:OleVariant;AddtoMru:OleVariant;TextCodePage:OleVariant;
TextVisualLayout:OleVariant;lcid:Integer);
где
- FileName - имя файла, в котором сохраняется книга, если имя и путь не указан,
то книга сохранятся в текущем каталоге (String).
- FileFormat - формат файла (Integer).
- Password - пароль для открытия файла (String).
- WriteResPassword - пароль для изменения файла (String).
- ReadOnlyRecomended - рекомендовать доступ только для чтения (Boolean).
- CreateBackUp - всегда создать резервный копию (Boolean).
- ConflictResolution - способ разрешения конфликтов между пользователями.
- AddtoMRU - добавить файл в список недавно использованых (Boolean).
- AccesMode - режим доступа к файлу и может принимать значения:
- xlNoChange - не изменять ранее установленный режим;
- xlExclusive - исключительный доступ пользователя к файлу. При этом
если файл был в это время открыт другим пользователем, то ему будет предложено
сохраниться под другим именем.
- xlShared - свободный доступ.
- Закрыть все книги методом Close
ExcelApplication1.Workbooks.Close(lsid);
ExcelApplication1.Workbooks[i].Close(SaveChanges,EmptyParam,EmptyParam,lcid);
где первый параметр определяет сохранять ли изменения, если
True - значит сохранять, во втором параметре
указывается имя файла в который необходимо сохранять изменения, если
SaveChanges:=True и второй не указан,
то появится диалог сохранения файла. Если вместо
SaveChanges поставить
EmptyParam, то пользователя
спросят, нужно ли сохранить изменения. Хотя бывает, что срабатывает
SaveChanges:=EmptyParam и
SaveChanges:=false одинаково, и оба спрашивают, нужно ли сохранять изменения, третий параметр используется,
когда книга предназначена для пересылки какому-то адресату.
- Печать книги с помощью метода PrintOut
ExcelApplication1.ActiveWorkBook.PrintOut(EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,LOCALE_USER_DEFAULT);
Для этого используется процедура
procedure PrintOut (From: OleVariant; To_ :OleVariant;
Copies: OleVariant; Preview: OleVariant; ActivePrinter: OleVariant; PrintToFileOleVariant; Collate: OleVariant;
PrToFileName:OleVariant; lcid:Integer);
где
- From - номер страницы с которой нужно начинать печать,
- To_ - номер последней печатаемой страницы,
если стоит EmptyParam, то последняя,
- Copies - определяет количество копий,
- Preview - указывает, должно ли открываться окно предпросмотра(False и EmptyParam - не должно),
- ActivePrinter - можно указать имя принтера, по умолчанию текущий,
- PrintToFileOleVariant - указывает, должно ли печататься в файл (False и EmptyParam - не должно),
- PrToFileName - указывает имя файла при PrintToFileOleVariant:=true, если при этом условии параметр равен
EmptyParam, то пользователя спрашивается имя файла (в Excel97 этот параметр отсутствует),
- Collate - указывает, нужно ли разбирать по копиям (False и EmptyParam - не должно),
- lcid - обычно задается равным LOCALE_USER_DEFAULT.
Проиллюстрируем некоторые методы компонента TExcelApplication на примере: создадим приложение, которое позволяет
открыть книгу, добавить новую книгу, вывести книгу на печать и закрыть все открытые книги.
Результат выполнения приложения можно увидеть на рисунке:
Рис.2. Иллюстрация некоторых методов TExcelApplication
Текст этого примера можно взять
здесь
На следующем шаге мы продолжим рассматривать свойства компонента TExcelApplication.
Предыдущий шаг
Содержание
Следующий шаг