Bonsoir,
J'ai deja trouvé des topics sur le sujet mais rien qui concerne mon problème avec exactitude.
Alors, j'ai commencé un codé un programme de création de factures, avec les commandes de _Word....
j'ai pu faire ouvrir un Modèle que j'ai crée, y inserer du texte et le sauvegarder sous un autre nom.
Le problème c'est que le texte est inseré à la fin du document, et ça ne m'arrange pas. Je sais que c'est à cause du "Range.insertAfter" ya aussi "Range.text" qui insere là où il ya le curseur (par défaut en haut du document)
ce que je veux c'est y inserer les données (Nom,Prénom, N° dossier, date etc...) qui sont lu à partir des input sur le GUI avec GUICtrlRead($inputX), à des endroits précis.
Ex:
Nom: XXX
Prénom: XXX
Je voudrai que les données soient écrits à la place du XXX
Y'aurait-il des fonctions qui permettent de positionner le curseur où je voudrai ?
Sinon si il ya un autre moyen pour réaliser mon programme je suis ouvert, ce n'est vraiment pas obligé que je travail avec les commande _Word par contre les factures devront êtres enregistrés sous .doc.
Merci de vos suggestions.
Mon script si ça peut aider:
► Afficher le texte
Code : Tout sélectionner
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <GuiEdit.au3>
#include <ButtonConstants.au3>
#include <GuiTab.au3>
#include <Word.au3>
;================================;
GUICreate("Facturator v1.0",800,600)
GUISetBkColor(0xd8e5b5)
;Informations sur le client
GUICtrlCreateGroup("Informations sur le client",30,180,200,100)
GUICtrlSetFont(-1,8.5,400,6)
$input1 = GUICtrlCreateInput("",110,210,100,20)
GUICtrlCreateLabel("Nom",60,210)
$input2 = GUICtrlCreateInput("",110,250,100,20)
GUICtrlCreateLabel("Prénom",60,250)
;Informations sur le dossier
GUICtrlCreateGroup("Informations sur le dossier",30,330,200,100)
GUICtrlSetFont(-1,8.5,400,6)
$input3 = GUICtrlCreateInput("",130,360,80,20)
GUICtrlCreateLabel("N° du dossier",60,360)
$input4 = GUICtrlCreateInput("JJ/MM/AAAA",110,390,100,20)
GUICtrlCreateLabel("Date",60,390)
$bt = GUICtrlCreateButton("Créer la facture",80,450,100,30)
GUISetState(@SW_SHOW)
while 1
$msg = GUIGetMsg()
Select
Case $msg = $GUI_EVENT_CLOSE
Exit
Case $msg = $bt
$oWordApp = _WordCreate (@ScriptDir & "\Facture.doc", 0, 0)
_WordDocOpen ($oWordApp, @ScriptDir & "\Facture.doc", 0, 0)
$oDoc = _WordDocGetCollection ($oWordApp, 0)
$oDoc.Range.insertAfter ( GUICtrlRead($input1) & @LF)
$oDoc.Range.insertAfter ( GUICtrlRead($input2) & @LF)
_WordDocSaveAs($oDoc, @ScriptDir & "\Facture " & GUICtrlRead($input3) & ".doc")
_WordQuit ($oWordApp, 0)
EndSelect
WEnd
PS: Le programme est pour un oncle qui n'a pas envie de télécharger des progs du net parcequ'il s'y connais pas trop en informatique, j'ai pensais lui codé ce programme trés basique pour qu'il puisse créer ses factures en toute simplicité.