Характерной особенностью данной технологии является то, что после создания специального объекта ( в нашем случае это книга Excel, а в uses необходимо добавить ComObj)
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
XL := CreateOLEObject('Excel.Application'); // создание OLE объекта
XL.WorkBooks.add;
XL.visible := true;
end;
Создается новый объект XL – книга Excel и новый объект воспринимает команды VBA for Application, то есть команды макросов Excel. Таким образом мы можем формировать команды по созданию и переименованию страниц книги (следует отметить, что разница в синтаксисе все же есть и команды VBA надо применять осторожно:
XL.Sheets.Add; // добавление новой страницы в книгу
XL.Sheets['Sheet3'].Select; // выбор активной страницы
XL.Sheets['Sheet3'].Name := 'mySheet'; //переименование текущей страницы
xl.ActiveWorkbook.SaveAs('D:\Applications\Excel\GrateBook1.xls'); //сохранение
Для занесения данных в ячейки используется выделение:
XL.cells.select; //выделение всех ячеек активной страницы
XL.Range['A1', 'A1'].select; //выделение одной ячейки
XL.Range['A1'].select; //то же самое
cn := 'B12'; //выделение ячейки с использованием переменной
XL.Range[cn].select;
XL.Range['A1', 'C10'].select; //выделение диапазона ячеек
Для занесения данных в ячейки следует использовать следующую команду:
xl.ActiveCell.FormulaR1C1 := '12345';
Для форматирования электронной таблицы следует использовать:
XL.selection.Columns.autoFit; //авторазмер ячейки
XL.Selection.Font.Name := 'Garamond'; //установка шрифта
XL.Selection.Font.Size := 20; //установка размера шрифта
Таким образом, у нас имеется набор команд, которые позволяют нам создавать приложения в Delphi, которые могут непосредственно формировать электронные таблицы.
|