Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi word datei ausfüllen (https://www.delphipraxis.net/4257-word-datei-ausfuellen.html)

CitnAmor 21. Apr 2003 13:30


word datei ausfüllen
 
hallo, ich habe eine *.doc datei mit einigen leeren feldern, jetzt möchte ich diese mit delphi ausfüllen, weiss jemand wie das geht? 18a citn

aaron 25. Apr 2003 16:49

guck mal:...in einem Word Dokument Text ersetzen? ----...Textmarken eines Word Dokuments ansprechen? ----Automation-Tutorial

CitnAmor 25. Apr 2003 18:56

dass is doch mal nicht schlecht... funktioniert auch... haste evtl ne idee wie ich da ne schleife reinbekomme, so dass ich mehrere strings ersetzen kann?

aaron 25. Apr 2003 21:11

wie du das mit der schleife meinst verstehe ich nicht...wenn du textmarken ausfüllen lassen willst kannst du das so machen.

Delphi-Quellcode:
uses ComObj;

procedure wordforumular;
var Word: variant;
begin
  screen.Cursor:=crHourglass;
  try
    {Es wird zuerst versucht, eine laufende Word-Instanz zu verwenden}
    word:=GetActiveOleObject('Word.Application');
  except
    try
      {Läuft Word noch nicht, wird eine neue Verbindung aufgebaut}
      Word:=CreateOleObject('Word.Application');
    except
      {Schlägt sie fehl (Word nicht installiert), gibt es eine Fehlermeldung}
      ShowMessage('Microsoft Word kann nicht starten.');
      screen.cursor:=crDefault;
      exit;
    end;
  end;
  word.visible:=true;
  Word.Documents.Add(Template:='C:\beispiel.doc');
  try
    Word.ActiveDocument.FormFields.Item('Name').Result:='Hans Müller';
    Word.ActiveDocument.FormFields.Item('Ort').Result:='Berlin';
  finally
    word:=unassigned;
    screen.cursor:=crDefault;
  end;
end;

aaron 25. Apr 2003 21:33

hier ist auch noch ein guter link
COM/OLE/DDE

CitnAmor 25. Apr 2003 21:39

mit der schleife meine..:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
Word_StringReplace('C:\Test.doc','hallo','123456',[wrfReplaceAll]);
  Word_StringReplace('C:\Test.doc','mama','ficken',[wrfReplaceAll]);
  Word_StringReplace('C:\Test.doc','papa','bumsen',[wrfReplaceAll]);
  Word_StringReplace('C:\Test.doc','schwester','blasen',[wrfReplaceAll]);
end;
so jetzt ersetzt der ja hallo in 12345... mama in f... usw das prob is nur dass der jedesmal die word datei öffnet den string sucht den string ersetzt... da ich das mit vielen wörtern machen muss... also ne schlechte lösung... jetzt dachte ich mir ne schleife zu machen.. die vor zwischen {initialize...} und {save}...! dann brauch der net jedesmal das doc öffen speichern schließen....


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:29 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz