PHP Delphi CSS HTML JavaScript Perl API ASP MySQL XML С++ VBasic WEB разработка *NIX CouchDB Hack Python
Главная Статьи Delphi Использование сервера автоматизации Excel
Главная
 Главная  Контакты
 
Программинг
Статьи Книги ЧаВО
 
xBOOKi
Fresh Books Операционки Сети
 
Поиск
-------
 
Counters
Яндекс цитирования
Rambler's Top100
-------
 
CryptDisk.4h
Программа которая позволяет создать виртуальный шифрованный логический диск.

cryptdisk.4hack.com

-------
 
 
Использование сервера автоматизации Excel

Для использования серверов автоматизации необходимо подключить модуль comobj

Пример работы с Excel
В следующей процедуре реализовано открытие нового экземпляра Excel, создание рабочих листов, заполнение ячеек и создание диаграммы
procedure TfmMain.btExample6Click(Sender: TObject);
var
 Excel,WorkBook,Sheet1,Sheet2,Chart:variant;
 Sheet,SeriesCollection:Variant;
 vrange:variant;
 i,j:integer;
begin
 Excel:=CreateOleObject('Excel.Application');
                              //создаем экземпляр объекта автоматизации
 Excel.Visible:=cbExcelVisible.Checked;
 Excel.SheetsInNewWorkbook := 2;
                         //колическтво рабочих листов в создаваемой книге
 WorkBook:=Excel.Workbooks.Add;//создание новой рабочей книги
 Sheet1:=WorkBook.WorkSheets[1];
 Sheet2:=WorkBook.WorkSheets[2];
 Chart:=WorkBook.Charts.Add;//создание новой диаграммы
 Sheet1.Name:='Table 1';//переименование рабочего листа
 Sheet2.Name:='Table 2';
 for j:=1 to 2 do begin //заполнение ячеек
  Sheet:=WorkBook.WorkSheets[j];
  for i:=1 to 11 do begin
   Sheet.Cells.Item[i,1].Value:=i;
   Sheet.Cells.Item[i,2].Value:=i*2;
  end;
 end;
 vrange:=Sheet1.range['A1:A10'];
 SeriesCollection:=Chart.SeriesCollection;
 SeriesCollection.Add(vrange);
 vrange:=Sheet2.Range['B1:B10'];
 SeriesCollection.Add(vrange);
 Excel:=UnAssigned;
end;
Копирование данных из TDataSet в Excel
procedure DataSetToExcel(DataSet:TDataSet;DataAsString:boolean);
var
 Excel, WorkBook, Sheet, v : Variant;
 Col, Row, i : Integer;
begin
 Excel := CreateOleObject('Excel.Application');
 try
  Excel.SheetsInNewWorkbook := 1;
  WorkBook := Excel.WorkBooks.Add;
  Sheet := WorkBook.WorkSheets[1];
  with DataSet do try
   DisableControls;
   Row := 2;
   Col := 1;
   for i := 0 to FieldCount-1
   do if Fields[i].Visible then begin
    Sheet.Cells[Row, Col] := Fields[i].DisplayName;
    Inc(Col);
   end;
   Sheet.Rows[Row].Font.Bold := True;
   Inc(Row);
   First;
   while NOT EOF do begin
    Col := 1;
    for i := 0 to FieldCount-1
    do if Fields[i].Visible then begin
     if DataAsString then begin
      Sheet.Cells[Row, Col] :=Fields[i].DisplayText;
     end else begin
      v := Fields[i].Value;
      Sheet.Cells[Row, Col] := v;
     end;
     Inc(Col);
    end;
    Next;
    Inc(Row);
   end;
  finally
   EnableControls;
  end;
 finally
  Sheet.Cells.Columns.AutoFit;
  Excel.Visible := True;
 end;
end;


Свежее
Резервное копирование rsync-ом
DNS Amplification (DNS усиление)
Алгоритм Шинглов — поиск нечетких дубликатов текста
Metasploit Framework. Обзор
Использование CouchDB
-------



 
Copyright © 2003-2009   Frikazoid.
Rambler's Top100