Недавно добавленные исходники

•  DeLiKaTeS Tetris (Тетрис)  4 584

•  TDictionary Custom Sort  6 599

•  Fast Watermark Sources  6 369

•  3D Designer  9 320

•  Sik Screen Capture  6 703

•  Patch Maker  7 084

•  Айболит (remote control)  7 088

•  ListBox Drag & Drop  5 956

•  Доска для игры Реверси  97 498

•  Графические эффекты  7 292

•  Рисование по маске  6 584

•  Перетаскивание изображений  5 457

•  Canvas Drawing  5 827

•  Рисование Луны  5 537

•  Поворот изображения  5 058

•  Рисование стержней  3 623

•  Paint on Shape  2 864

•  Генератор кроссвордов  3 750

•  Головоломка Paletto  3 020

•  Теорема Монжа об окружностях  3 828

•  Пазл Numbrix  2 519

•  Заборы и коммивояжеры  3 219

•  Игра HIP  2 186

•  Игра Go (Го)  2 117

•  Симулятор лифта  2 500

•  Программа укладки плитки  2 149

•  Генератор лабиринта  2 633

•  Проверка числового ввода  2 303

•  HEX View  2 635

•  Физический маятник  2 255

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Сохранить StringGrid в Excel файле




function SaveAsExcelFile(stringGrid: TstringGrid; FileName: string): Boolean; 
const 
  xlWBATWorksheet = -4167; 
var 
  Row, Col: Integer; 
  GridPrevFile: string; 
  XLApp, Sheet: OLEVariant; 
begin 
  Result := False; 
  XLApp  := CreateOleObject('Excel.Application'); 
  try 
    XLApp.Visible := False; 
    XLApp.Workbooks.Add(xlWBatWorkSheet); 
    Sheet      := XLApp.Workbooks[1].WorkSheets[1]; 
    Sheet.Name := 'My Sheet Name'; 
    for col := 0 to stringGrid.ColCount - 1 do 
      for row := 0 to stringGrid.RowCount - 1 do 
        Sheet.Cells[row + 1, col + 1] := stringGrid.Cells[col, row]; 
    try 
      XLApp.Workbooks[1].SaveAs(FileName); 
      Result := True; 
    except 
      // Error ? 
    end; 
  finally 
    if not VarIsEmpty(XLApp) then 
    begin 
      XLApp.DisplayAlerts := False; 
      XLApp.Quit; 
      XLAPP := Unassigned; 
      Sheet := Unassigned; 
    end;
  end; 
end; 


procedure TForm1.Button1Click(Sender: TObject); 
begin 
  if SaveAsExcelFile(stringGrid1, 'c:\MyExcelFile.xls') then 
    ShowMessage('stringGrid saved!');
end; 
{*************************************************} 
// Reiner Schlay http://www.assu-assist.nl/ 

function RefToCell(ARow, ACol: Integer): string; 
begin 
  Result := Chr(Ord('A') + ACol - 1) + i2s(ARow); 
end; 

procedure StringGridToExcel(AGrid: TstringGrid); 
var 
  i, j: Integer; 
  Excel: Application_; 
  Book: Workbook; 
  Sheet: _WorkSheet; 
  Data: OLEVariant; 
begin 
  Data := VarArrayCreate([1, AGrid.RowCount, 1, AGrid.ColCount], 
    varVariant); 
  for i := 0 to AGrid.ColCount - 1 do 
    for j := 0 to AGrid.RowCount - 1 do 
      Data[j + 1, i + 1] := AGrid.Cells[i, j]; 
  Excel := CoApplication_.Create; 
  Book  := Excel.WorkBooks.Add(EmptyParam, 0); 
  Sheet := Excel.Sheets.Add(EmptyParam, EmptyParam, 1, 
    xlWorksheet, 0) as _WorkSheet; 
  Sheet.Range[RefToCell(1, 1), RefToCell(AGrid.RowCount, 
    AGrid.ColCount)].Value := Data; 
  Excel.Visible[0] := True; 
  Excel.UserControl := True; 
end;





Похожие по теме исходники

DBLookupComboBox in StringGrid

Cell hint in StringGrid

CheckBox in StringGrid

Components in StringGrid

 

Сапер StringGrid

StringGrid Decoration

TStringGridCheker

TQGRID Perfect StringGrid

 

OwnerDraw StringGrid

Экспорт баз данных в Excel

Transfer Tables Excel-Access

Excel Films Lister

 

Work with Word and Excel




Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте