Einzelnen Beitrag anzeigen

Ykcim

Registriert seit: 29. Dez 2006
Ort: NRW
839 Beiträge
 
Delphi 10.4 Sydney
 
#13

Re: Word Dokument fernsteuern, Tutorial?

  Alt 11. Jun 2007, 23:05
Hallo Zusammen,

ich hoffe, mir kann jemand helfen: Ich habe wie beschrieben versucht, die Daten aus einem StringGrid in eine WordTabelle zu exportieren. Auf den ersten Blick scheint es auch zu funktionieren - Word wird gestartet, eine Tabelle wird erstellt und die Spaltenüberschriften eingetragen. Und dann bricht das Programm ab mit dem Hinweis "Das angeforderte Element ist nicht in der Sammlung enthalten." Zugegeben, ich bin nur ein kleiner HobbyBastler, aber vielleicht ist es für Euch ein Klacks und Ihr könnte mir weiterhelfen, obwohl dieser Thread schon so alt ist.

Ich habe die Prozedure unten noch einmal angehängt...

Delphi-Quellcode:
uses ComObj;

...

procedure TProjekt_verlauf.Button1Click(Sender: TObject);
var
  WordApp,NewDoc,WordTable:OLEVariant;
  iRows,iCols,iGridRows,jGridCols:Integer;
begin
  try

    // Word Instanz erzeugen
    WordApp:=CreateOleObject( 'Word.Application');
  except

    // Fehler . . . .
    Exit;
  end;
  
  // Word anzeigen
  WordApp.Visible:=True;
  
  // Neues Dok einfügen
  NewDoc:=WordApp.Documents.Add;
  
  // Spalten , Reihen ermitteln
  iCols:=StringGrid.ColCount;
  iRows:=StringGrid.RowCount;

  // Tabelle einfügen
  WordTable:=NewDoc.Tables.Add( WordApp.Selection.Range,iCols,iRows);

  // Tabelle ausfüllen mit Stringgrid Daten
  for iGridRows:=1 to iRows do
  for jGridCols:=1 to iCols do
  WordTable.Cell( iGridRows,jGridCols).Range.Text:=
  StringGrid.Cells[jGridCols-1,iGridRows-1];

  WordApp:=Unassigned;
  NewDoc:=Unassigned;
  WordTable:=Unassigned;
end;
Vielen Dank im Voraus.
Patrick
  Mit Zitat antworten Zitat