,
//Obtenir des données à partir d'un fichier Word
PRécédure getWordStr ;
var WordApp : TWordapplication ;
WordDoc : TWordDocument ;
DocInx, oFileName, CfCversions, oReadOnly, AddToRctFiles, PswDocument,
PswTemplate, oRevert, wpswDocument, WPswTemplate, oFormat : OleVariant ;
je,iRow,iCol:entier;
maCellule : Cellule ;
maLigne : Ligne ;
commencer
memo1.Lines.Clear;
// ===== Créer un objet =====
si ce n'est pas attribué (WordApp), alors
commencer
WordApp := TWordApplication.Create(nil);
WordApp.Visible := faux;
fin;
si ce n'est pas attribué (WordDoc), alors
WordDoc:= TWordDocument.Create(nil);
essayer
DocInx :=1 ;
oFileName := 'd:/test.doc';
oReadOnly :=true ;
CfCversions := EmptyParam;
AddToRctFiles := EmptyParam ;
PswDocument := EmptyParam ;
PswTemplate := EmptyParam ;
oRevert := EmptyParam ;
WPswDocument := EmptyParam ;
WPswTemplate := EmptyParam ;
oFormat := EmptyParam ;
// ===== Ouvrir le fichier =====
WordApp.Documents.open(oFileName,CfCversions,oReadOnly,AddToRctFiles,
PswDocument,PswTemplate,oRevert,WPswDocument,WPswTemplate,oFormat);
// ===== Fichiers associés =====
WordDoc.ConnectTo(WordApp.Documents.Item(DocInx));
//Méthode (1) : obtenir le contenu en caractères de l'intégralité du texte, y compris les tableaux
s := WordDoc.Range.text;
//Méthode (2) : prendre 1 à 4 caractères, tableaux compris
maPlage:=WordDoc.Range;
maPlage.Début:=0;
maPlage.End_ :=4;
enfin
si assigné (WordDoc) alors // ===== Fermez le fichier =====
commencer
WordDoc.Fermer ;
WordDoc.Déconnecter ;
WordDoc.Destroy;
WordDoc := nul;
fin;
si assigné (WordApp) alors // ===== Fermer le mot =====
commencer
WordApp.Quitter ;
WordApp.Déconnecter ;
WordApp.Destroy ;
WordApp := nul ;
fin;
fin;
fin;