А вот за этот код даю руку на отсечения. Правда пока не знаю чью руку
procedure TfrmZakazchik.Image2Click(Sender: TObject);
var
Excel: variant;
i:Integer;
begin
if MessageDlg('Вы уверены, что хотите экспортировать данные в Excel?',
mtConfirmation, [mbYes, mbNo], 0) = mrYes then
begin
Excel:= CreateOleObject('Excel.Application');
Excel.Workbooks.Add;
Excel.Sheets[1].Cells[1,1].Value:='Заказчик';// Создаем шарку
Excel.Sheets[1].Cells[1,2].Value:='Адрeс и контактные данные';
Excel.ActiveWorkBook.WorkSheets[1].Range['A1:B1'].Select;//Выделяем ячейки
Excel.Selection.HorizontalAlignment:=-4108;//Текст ячеек вырвниваем по центру
Excel.Selection.Interior.ColorIndex:=20;//устанавливаем цвет фона
Excel.Selection.Font.Bold:=true;// шрифт жирный
ProgressBar1.Max:=Table1.RecordCount;
ProgressBar1.Position:=0;
Table1.First;
For i:=1 to Table1.RecordCount do
begin
Excel.Sheets[1].Cells[i+1,1].Value:=Table1.FieldByName('Zakazchik').AsString;//вводим значения таблицы
Excel.Sheets[1].Cells[i+1,2].Value:=Table1.FieldByName('Adres').AsString;
ProgressBar1.Position:=i;
Table1.Next;
end;
Excel.ActiveSheet.PageSetup.Orientation:= 2;//альбомная страница
Excel.ActiveWorkBook.WorkSheets[1].Range['A1:B'+IntToStr(Table1.RecordCount+1)].Select;//выделяем всю таблицу
Excel.Selection.Borders.LineStyle:=1;//устанавливаем границы
Excel.Selection.EntireColumn.AutoFit;// выравниваем колонки по тексту
Excel.ActiveSheet.PageSetup.PrintTitleRows:='$1:$1 ';// при печати на каждой странице ввыводится шапка
ProgressBar1.Position:=0;
Excel.Visible:=True;//показываем наши труды
Table1.First;
end;
|