Thema: Word auslesen

Einzelnen Beitrag anzeigen

HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
969 Beiträge
 
Delphi 6 Professional
 
#5

AW: Word auslesen

  Alt 30. Mai 2017, 08:45
Hmm..

(Wieso OleContainer? )

Mach es einfach so:

Delphi-Quellcode:
uses
  ComObj;

const
  wdDoNotSaveChanges = $00000000;
  wdSaveChanges = $FFFFFFFF;
  wdPromptToSaveChanges = $FFFFFFFE;

function GetWordText(AFileName : string):string;
var
  WordApp : OleVariant;
  Doc : OleVariant;
  SaveChanges: OleVariant;
  tmpStr : string;
begin
  WordApp := CreateOLEObject('Word.Application'); // Word-Verbindung zu neuem Word
  try
    WordApp.Documents.Open(AFileName); // Datei laden
    try
      WordApp.Visible := false; // Unsichtbar machen
      Doc := WordApp.ActiveDocument;
      Doc.ActiveWindow.Selection.WholeStory; // Alles Markieren

      tmpStr := Doc.ActiveWindow.Selection.Text; // Markierten Text lesen
      Result := StringReplace(tmpStr,#13,#13#10,[rfReplaceAll]); // Zeilenumbrüche korrigieren

      SaveChanges := wdDoNotSaveChanges;
      WordApp.Quit(SaveChanges, EmptyParam, EmptyParam); // Word Schließen ohne speichern
    except
      WordApp.Visible := true; // Auf jedenfall sichtbar machen, wenn ein Fehler auftritt
    end;
  finally
    WordApp := Unassigned; // Verbindung lösen
  end;
end;

Alles hierzu habe ich aus den ersten Hits zu 'Delphi Word Text' googlen entnommen.
  Mit Zitat antworten Zitat