
21.12.2008, 23:41
|
Начинающий
|
|
Регистрация: 10.09.2008
Сообщения: 193
Репутация: 10
|
|
Оптимизация для Word
У меня есть код экспорта из dbgrid в excel, можете помочь переписать его под word
Код:
procedure TForm3.ToolButton3Click(Sender: TObject);
var
i,j,index: Integer;
ExcelApp,sheet,Colum: Variant;
begin
ExcelApp := CreateOleObject('Excel.Application');
ExcelApp.Visible := False;
ExcelApp.WorkBooks.Add(-4167);
ExcelApp.WorkBooks[1].WorkSheets[1].name := 'Учетная карточка';
sheet:=ExcelApp.WorkBooks[1].WorkSheets['Учетная карточка'].Columns;
Sheet.Cells[2,1]:='Учетная карточка '+Form1.Edit1.Text;
Sheet.Range['A2','D2'].Font.Name:='Times New Roman';
Sheet.Range['A2','D2'].Font.Bold:=true;
Sheet.Range['A4','D4'].Font.Bold:=true;
Sheet.Range['A2','D2'].Font.Size:=14;
Sheet.Range['A2','D2'].Columns.WrapText:=false;
Sheet.Range['A4']:='Дата';
Sheet.Range['B4']:='Группа';
Sheet.Range['C4']:='Тема';
Sheet.Range['D4']:='Часы';
Sheet.Range['A4','D4'].HorizontalAlignment:=xlHAlignCenter;
Colum:=ExcelApp.Workbooks[1].WorkSheets['Учетная карточка'].Columns;
Colum.Columns[1].ColumnWidth:=10;
Colum.Columns[2].ColumnWidth:=10;
Colum.Columns[3].ColumnWidth:=20;
Colum.Columns[5].ColumnWidth:=20;
index:=5; //Загоняем с первой строки
DBGrid1.DataSource.DataSet.First;
for i:=1 to DBGrid1.DataSource.DataSet.RecordCount do
begin
for j:=1 to DBGrid1.FieldCount do
sheet.cells[index,j]:=DBGrid1.fields[j-1].asstring;
inc(index);
DBGrid1.DataSource.DataSet.Next;
end;
ExcelApp.Visible := true;
end;
|