,
//Obtém dados do arquivo Word
Procedimento getWordStr;
var WordApp: TWordapplication;
WordDoc: TWordDocument;
DocInx,oFileName,CfCversions,oReadOnly,AddToRctFiles,PswDocument,
PswTemplate,oRevert,wpswDocument,WPswTemplate,oFormat: OleVariant;
i,iRow,iCol:inteiro;
minhaCélula:Célula;
minhaLinha:Linha;
começar
memo1.Lines.Clear;
// ===== Criar objeto =====
se não for atribuído (WordApp), então
começar
WordApp:=TWordApplication.Create(nil);
WordApp.Visible := falso;
fim;
se não for atribuído (WordDoc), então
WordDoc:=TWordDocument.Create(nil);
tentar
DocInx:=1;
oNomedoArquivo := 'd:/test.doc';
oReadOnly:=verdadeiro;
CfCversões := VazioParam;
AddToRctFiles:=EmptyParam;
PswDocument:=EmptyParam;
PswTemplate:=EmptyParam;
oReverter:= VazioParam;
WPswDocument:=EmptyParam;
WPswTemplate:=EmptyParam;
oFormat:= VazioParam;
// ===== Abrir arquivo =====
WordApp.Documents.open(oFileName,CfCversions,oReadOnly,AddToRctFiles,
PswDocument,PswTemplate,oRevert,WPswDocument,WPswTemplate,oFormat);
// ===== Arquivos associados =====
WordDoc.ConnectTo(WordApp.Documents.Item(DocInx));
//Método (1): Obtenha o conteúdo dos caracteres de todo o texto, incluindo tabelas
s := WordDoc.Range.text;
//Método (2): Use de 1 a 4 caracteres, incluindo tabelas
meuRange:=WordDoc.Range;
meuRange.Start:=0;
meuRange.End_ :=4;
finalmente
if Assigned(WordDoc) então // ===== Feche o arquivo =====
começar
WordDoc.Fechar;
WordDoc.Desconectar;
WordDoc.Destroy;
WordDoc := nulo;
fim;
se atribuído (WordApp) then // ===== Fechar Word =====
começar
WordApp.Quit;
WordApp.Disconnect;
WordApp.Destroy;
WordApp := nulo;
fim;
fim;
fim;