...export a TStringGrid to a MS Word table?
Author: Thomas Stutz
uses
ComObj;
procedure TForm1.Button1Click(Sender: TObject);
var
WordApp, NewDoc, WordTable: OLEVariant;
iRows, iCols, iGridRows, jGridCols: Integer;
begin
try
// Create a Word Instance
// Word Instanz erzeugen
WordApp := CreateOleObject('Word.Application');
except
// Error...
// Fehler....
Exit;
end;
// Show Word
// Word anzeigen
WordApp.Visible := True;
// Add a new Doc
// Neues Dok einfügen
NewDoc := WordApp.Documents.Add;
// Get number of columns, rows
// Spalten, Reihen ermitteln
iCols := StringGrid1.ColCount;
iRows := StringGrid1.RowCount;
// Add a Table
// Tabelle einfügen
WordTable := NewDoc.Tables.Add(WordApp.Selection.Range, iCols, iRows);
// Fill up the word table with the Stringgrid contents
// Tabelle ausfüllen mit Stringgrid Daten
for iGridRows := 1 to iRows do
for jGridCols := 1 to iCols do
WordTable.Cell(iGridRows, jGridCols).Range.Text :=
StringGrid1.Cells[jGridCols - 1, iGridRows - 1];
// Here you might want to Save the Doc, quit Word...
// Hier evtl Word Doc speichern, beenden...
// ...
// Cleanup...
WordApp := Unassigned;
NewDoc := Unassigned;
WordTable := Unassigned;
end;
printed from
www.swissdelphicenter.ch
developers knowledge base