Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Дельфи + Excel [D7, WinXP]


VasRog ©   (2004-11-15 20:03:00) 

Тут такая проблема имеется:  как мне сохранить большое количество данных,  аолучаемых из моей проги,  в  xl - евскую таблицу?  И как их считать оттуда?


GanibalLector   (2004-11-16 00:34:00) [1]

> Во второй не понял что такое ADO
Ну так не смотри на ADO.


VasRog   (2004-11-16 00:26:00) [2]

Несколько строчек не понятно мне:
 1).   XLApp.workbooks.add(-4167);
 2).  ADOTable1.First;
     for i:=0 to ADOTable1.RecordCount-1 do
       begin
        Sheet.cells[index,1]:=ADOTable1.Fields.Fields[1].AsString;
        Sheet.cells[index,2]:=ADOTable1.Fields.Fields[2].AsString;
        Sheet.cells[index,3]:=ADOTable1.Fields.Fields[3].AsInteger;
        inc(index);
        ADOTable1.Next;
       end;
Объясните пожалуста если не сложно.  Во второй не понял что такое ADO.


_student   (2004-11-15 21:33:00) [3]

Я например вот так сохраняю в Excel
procedure TForm1.Button5Click(Sender: TObject);
var XLApp, Sheet, Column:Variant;
   index,i:integer;
begin
       XLApp:=CreateOleObject('Excel.Application');
       XLApp.Visible:=true;
       XLApp.workbooks.add(-4167);
       XLApp.workbooks[1].worksheets[1].name:='Отчет';
       Column:=XLApp.workbooks[1].worksheets['Отчет'].columns;
       Column.columns[1].columnwidth:=20;
       Column.columns[2].columnwidth:=20;
       Column.columns[3].columnwidth:=20;
       Column.columns[4].columnwidth:=20;
       Column.columns[5].columnwidth:=20;

       column:=XLApp.workbooks[1].worksheets['Отчет'].rows;
       column.rows[2].font.bold:=true;
       column.rows[1].font.bold:=true;
       column.rows[1].font.color:=clblue;
       column.rows[1].font.size:=14;

       sheet:=XLApp.workbooks[1].worksheets['Отчет'];
       Sheet.cells[1,2]:='Отчет';
       Sheet.cells[2,1]:='Дата';
       Sheet.cells[2,2]:='Время';
       Sheet.cells[2,3]:='Показание';

      index:=3;
      ADOTable1.First;
      for i:=0 to ADOTable1.RecordCount-1 do
        begin
         Sheet.cells[index,1]:=ADOTable1.Fields.Fields[1].AsString;
         Sheet.cells[index,2]:=ADOTable1.Fields.Fields[2].AsString;
         Sheet.cells[index,3]:=ADOTable1.Fields.Fields[3].AsInteger;
         inc(index);
         ADOTable1.Next;
        end;

end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо