Показать сообщение отдельно
  #2  
Старый 28.09.2010, 13:58
Аватар для Страдалецъ
Страдалецъ Страдалецъ вне форума
Гуру
 
Регистрация: 09.03.2009
Адрес: На курорте, из окна вижу теплое Баренцево море. Бррр.
Сообщения: 4,723
Репутация: 52347
По умолчанию

Пользоваться поиском - это видимо вы еще не проходили?
Держите пример по данной теме:
Код:
procedure TForm1.BitBtnToExcelOnClick(Sender: TObject); 
var 
WorkBk : _WorkBook; //  определяем WorkBook 
WorkSheet : _WorkSheet; //  определяем WorkSheet 
I, J, K, R, C : Integer; 
IIndex : OleVariant; 
TabGrid : Variant; 
begin 
if GenericStringGrid.Cells[0,1] <> '' then 
  begin 
   IIndex := 1; 
   R := GenericStringGrid.RowCount; 
   C := GenericStringGrid.ColCount; 
   // Создаём массив-матрицу 
   TabGrid := VarArrayCreate([0,(R - 1),0,(C - 1)],VarOleStr); 
   I := 0; 
   //  Определяем цикл для заполнения массива-матрицы 
   repeat 
   for J := 0 to (C - 1) do 
     TabGrid[I,J] := GenericStringGrid.Cells[J,I]; 
    Inc(I,1); 
   until 
    I > (R - 1); 

   // Соединяемся с сервером TExcelApplication 
   XLApp.Connect; 
    // Добавляем WorkBooks в ExcelApplication 
   XLApp.WorkBooks.Add(xlWBatWorkSheet,0); 
   // Выбираем первую WorkBook 
   WorkBk := XLApp.WorkBooks.Item[IIndex]; 
   // Определяем первый WorkSheet 
   WorkSheet := WorkBk.WorkSheets.Get_Item(1) as _WorkSheet; 
   // Сопоставляем Delphi массив-матрицу с матрицей в WorkSheet 
   Worksheet.Range['A1',Worksheet.Cells.Item[R,C]].Value := TabGrid; 
   // Заполняем свойства WorkSheet 
   WorkSheet.Name := 'Customers'; 
   Worksheet.Columns.Font.Bold := True; 
   Worksheet.Columns.HorizontalAlignment := xlRight; 
   WorkSheet.Columns.ColumnWidth := 14; 
   // Заполняем всю первую колонку 
   WorkSheet.Range['A' + IntToStr(1),'A' + IntToStr(R)].Font.Color := clBlue; 
   WorkSheet.Range['A' + IntToStr(1),'A' + IntToStr(R)].HorizontalAlignment := xlHAlignLeft; 
   WorkSheet.Range['A' + IntToStr(1),'A' + IntToStr(R)].ColumnWidth := 31; 
   // Показываем Excel 
   XLApp.Visible[0] := True; 
   // Разрываем связь с сервером 
   XLApp.Disconnect; 
 // Уничтожаем RangeMatrix 
   TabGrid := Unassigned; 
  end; 
end; 
__________________
Жизнь такова какова она есть и больше никакова.
Помогаю за спасибо.
Ответить с цитированием