Bonjour,

j'ai un problème que je n'arrive pas à résoudre (avec Office 2003)
Je voudrais copier/coller des numéros de factures qui sont dans des zones de textes dans des documents Word.
ces numéros ont été créés par l'intermédiaire d'un signet sous la forme "171101"

Par VBA Excel ou Word, j'arrive à ouvrir le document, à le rendre visible et au 1er plan (je sais que ce n'est pas nécessaire mais c'est pour voir ce qui se passe)
j'arrive aussi à positionner le curseur sur le signet, j'arrive même à écrire quelque chose (par exemple "test" > ça donne test171101) mais impossible de récupérer le n° de facture

en VBA Excel :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
Set ouvreword = CreateObject("word.application")
Set doc = ouvreword.documents.Open(nomentier) 'nom du document
doc.Application.Visible = True 'facultatif
doc.Activate 'facultatif
recup = doc.Bookmarks("numero").Range.Select 'positionne le curseur
recup = doc.Bookmarks("numero").Range.Text 'renvoie une chaine vide ("")
doc.Bookmarks("numero").Range.Text = "test" 'donne "test171101" sur le signet donc ne remplace pas la valeur précédente
en VBA Word, je peux utiliser Selection mais ça ne change rien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
doc.Activate
recup = doc.Bookmarks("numero").Range.Select ' positionne le curseur sur le signet (au début !)
ActiveDocument.ActiveWindow.Selection.MoveRight Unit:=wdCharacter, Count:=6, Extend:=wdExtend 'selectionne du texte sur le document ou est la macro mais pas sur la facture
j'ai essayé de mettre la macro sur un normal.dot : ça ne change rien !
il semble qu'il y ait 2 problèmes
1 - la macro n'est pas sur le document ou s'effectue la recherche
2 - le curseur se positionne "au début" du signet et c'est pour ça qu'il renvoie une chaine vide

j'ai près de 3000 numéros de factures à récupérer et j'espérais automatiser l'affaire
quelqu'un pour m'aider ? merci d'avance