Полезное для программистов:

Фриланс
Новости
Статьи
   
Рубрики:


Через СОМ интерфейс

Поиск:
Код

var Excel, WorkBook, Sheet: Variant;
begin
Excel := CreateOleObject('Excel.Application');  

Excel.WorkBooks.Open(FileName,False);  

WorkBook := Excel.WorkBooks.Item[1];  

Sheet := Workbook.Sheets.Item[3];  

Sheet.Cells[1,2]:='ASDFG';  

Sheet.Cells[2,2]:=230;  





Все объекты и методы Офиса можно посмотреть в help'е Офиса.

Автор ответа: Fantasist



--------------------------------------------------------------------------------


Ниже представлен пример создания новой таблице в Excel 2000:

Код

uses
 ComObj, ActiveX;

var
 Row, Col: integer;
 DestRange: OleVariant;
 Excel: Variant;

begin
 Excel := CreateOleObject('Excel.Application.9');
 Excel.Visible := True;
 Excel.WorkBooks.Add; //Создать новую таблицу

 //Можно помещать текст и значения в диапазон ячеек
 //Поместить     слово тест в диапазон ячеек
 Excel.ActiveSheet.Range['A2', 'B3'].Value := 'Тест';
 //Или число
 Excel.ActiveSheet.Range['A4', 'B5'].Value := 42;

 //А вот так задаётся формула
 Excel.ActiveSheet.Range['A10', 'A11'].Formula := '=RAND()';

 //Можно задавать номера ячеек и столбцов
 Excel.ActiveSheet.Cells.Item[1, 1].Value := 'Первая ячейка';

 Row:=1;
 Col:=3;
 Excel.ActiveSheet.Cells.Item[Row, Col].Value := 'Другая ячейка';

 //Можно скопировать данный из одного диапазона ячеек в другой
 DestRange := Excel.Range['D6', 'F10'];
 Excel.Range['A1', 'C5'].Copy(DestRange);

 //Можно задавать параметры шрифта в определённой ячейке
 Excel.Range['A2', 'A2'].Font.Size := 20;
 Excel.Range['A2', 'A2'].Font.FontStyle := 'Bold';
 Excel.Range['A2', 'A2'].Font.Color := clFuchsia;
 Excel.Range['A2', 'A2'].Font.Name := 'Arial';

 //Можно ещё и так изменить цвет диапазона ячеек
 Excel.Range['B2', 'C6'].Interior.Color := RGB(223, 123, 123);

end;




Далее представлен пример открытия и закрытия таблицы:

Код

uses
 ComObj, ActiveX;

var
 Excel: Variant;
 WBk : OleVariant;
 SaveChanges: OleVariant;

begin
 Excel := CreateOleObject('Excel.Application.9');
 Excel.Visible := True;

 //Открыть существующую таблицу
 WBk := Excel.WorkBooks.Open('C:\Test.xls');

 ...

 WBk.Close(SaveChanges := True);
 Excel.Quit;

end;






Просмотров: 1807

 

 

Новые статьи:


Популярные:
  1. Как сделать цикличным проигрывание MIDI-файла?
  2. Создание AVI файла из рисунков
  3. Как устройство "отключить в данной конфигурации"?
  4. Kто в данный момент присоединен через Сеть?
  5. Как узнать количество доступной памяти?
  6. Как реализовать в RichEdit разноцветный текст?
  7. Как скрыть свое приложение от ProcessViewer
  8. Как программно нажать/скрыть/показ кнопку "Start"?
  9. Модуль работы с ресурсами в PE файлах
10. Функции вызова диалоговых окон выбора
11. Проверка граматики средствами Word'а из Delphi.
12. Модуль для упрощенного вызова сообщений
13. Функции для записи и чтение своих данных в, ЕХЕ- файле
14. Рекурсивный просмотр директорий
15. Network Traffic Monitor
16. Разные модули
17. Универсальная функция для обращения к любым экспортируем функциям DLL
18. Библиотека от VladS
19. Протектор для UPX'а
20. Еще об ICQ, сообщения по контакт листу?
21. Использование открытых интерфейсов
22. Теория и практика использования RTTI
23. Работа с TApplication
24. Примеры использования Drag and Drop для различных визуальных компонентов
25. Что такое порт? Правила для работы с портами
26. Симфония на клавиатуре
27. Загрузка DLL
28. Исправление автоинкремента
29. Взаимодействие с чужими окнами
30. Проверить дубляжи в столбце


 

 

 
 
На главную