Probleme remplissage de signet Word depuis excel

Signaler
Messages postés
2
Date d'inscription
mardi 28 septembre 2010
Statut
Membre
Dernière intervention
28 septembre 2010
-
Messages postés
2
Date d'inscription
mardi 28 septembre 2010
Statut
Membre
Dernière intervention
28 septembre 2010
-
Bonjour,

Je ne trouve pas de réponse sur le forum... donc je poste...

Depuis excel j'ouvre un document Word que je rempli via des signet.
Mon code marche bien.
Une fois le word modifié le sauvegarde puis ferme word.

Le probléme est pour le second document... j'utilise la mm boucle... excel ouvre donc une nouvelle fois mon fichier word mais la les signets ne marche plus.... j'ai fait le dubbegage pas a pas... les valeurs des signets sont bonne mais elle ne sont pas tranmise a mon .doc

Une idée....

2 réponses

Messages postés
1241
Date d'inscription
mardi 10 octobre 2006
Statut
Membre
Dernière intervention
27 août 2013
5
Bonjour,

Peut-être serait-il judicieux de poster ici le code en question, afin qu'un membre puisse t'aiguiller et te le corriger.


L'expérience, c'est une connerie par jour, mais jamais la même..
Messages postés
2
Date d'inscription
mardi 28 septembre 2010
Statut
Membre
Dernière intervention
28 septembre 2010

Ok

Mais attention, mais j'ai peur de vous effrayé... je ne suis pas pro...

voici :
'Programme principal
Sub creationword
For i = 1 to 3 
creationword
Next
End sub

'Creation d'un nouveau word
Public Sub creationword()

' Les données de la UserForm :
Dim repert As String 'chemin acces
Dim appWord As Word.Application
Dim docWord As Word.Document







'2 - ouvrir le document a modifier

Suite:
'rep courant
Dim CheminComplet As String
Dim VarTabSplit
Dim IntCnt As Integer
Dim Chemin As String
 
     CheminComplet = ActiveWorkbook.Path
     VarTabSplit = Split(ActiveWorkbook.Path, "")
     Chemin = ""
     For IntCnt = 0 To UBound(VarTabSplit) - 1
           Chemin = Chemin & VarTabSplit(IntCnt) & ""
     Next IntCnt



repert = Chemin
repert = repert & "template\Proposal.doc"


Set appWrd = CreateObject("Word.Application")
appWrd.Visible = True
Set docWord = appWrd.Documents.Open(repert)






' 3 - Placer les données dans le document


'remplir produit
On Error GoTo rien3
For i = 1 To 12
tampix = "Prd" & i
RemplirSignet tampix, Prd
Next
rien3:




'ActiveDocument.Fields.Update ' màj des champs pour le renvoi sur Titre

'4 sauvegarde word
'chemin et enregister sous

    CheminComplet = ActiveWorkbook.Path
     VarTabSplit = Split(ActiveWorkbook.Path, "")
     Chemin = ""
     For IntCnt = 0 To UBound(VarTabSplit) - 1
           Chemin = Chemin & VarTabSplit(IntCnt) & ""
     Next IntCnt
appWrd.Visible = True

repert = Chemin
repert = repert & "J\CD" & Prd & ".doc"


'appWrd.Visible = True
'On Error GoTo rienz

appWrd.ActiveDocument.SaveAs Filename:=repert
appWrd.ActiveDocument.Close
appWrd.Quit savechanges:=False





Set appWrd = Nothing


DoEvents

rienz:
End Sub


' *******************************
' *** Utilisation des signets ***
' *******************************


Public Sub RemplirSignet(S As String, T As String)
' Remplit le signet S avec le texte T sans détruire S
On Error GoTo rien
Dim Place As Long
Place = ActiveDocument.Bookmarks(S).Range.Start
ActiveDocument.Bookmarks(S).Range.Text = T
ActiveDocument.Bookmarks.Add Name:=S, _
    Range:=ActiveDocument.Range(Place, Place + Len(T))
rien:
End Sub