Bonjour,

je suis en train de réaliser une appli permettant de rédiger des contrat grace à le source de heureuxoli http://heureuxoli.developpez.com/publipostage/

Dans un des clauses, je souhaite remplacer certain mots (ex : NomSalarié) par un le mot correspondant (Exupont).

J'ai fait ce code mais il est long à s'executer (normal c'est une boucle)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    Dim Plage As Object, Wrd As Object
    Set Plage = ActiveDocument.Content.Words
 
        For Each Wrd In Plage
        stSQL02 = "select * from tblclient where idclient =" & rs01.Fields("idclient").Value
        Set rs02 = db.OpenRecordset(stSQL02) 'définition du second recordset table client
 
            If Wrd = "CivilitéSalarié" Or Wrd = "CivilitéSalarié " Then Wrd = Replace(Wrd, Wrd, rs02.Fields("sttitre"))
            If Wrd = "PrénomSalarié" Or Wrd = "PrénomSalarié " Then Wrd = Replace(Wrd, Wrd, rs02.Fields("stPrenom"))
            If Wrd = "NomSalarié" Or Wrd = "NomSalarié " Then Wrd = Replace(Wrd, Wrd, rs02.Fields("stNom"))
            If Wrd = "VilleSalarié" Or Wrd = "VilleSalarié " Then Wrd = Replace(Wrd, Wrd, rs02.Fields("stVille"))
            If Wrd = "DateNaissanceSalarié" Or Wrd = "DateNaissanceSalarié " Then Wrd = Replace(Wrd, Wrd, rs02.Fields("stDateNaissance"))
            If Wrd = "LieuNaissanceSalarié" Or Wrd = "LieuNaissanceSalarié " Then Wrd = Replace(Wrd, Wrd, rs02.Fields("stLieuNaissance"))
            If Wrd = "NumSécuSalarié" Or Wrd = "NumSécuSalarié " Then Wrd = Replace(Wrd, Wrd, rs02.Fields("stNumSecu"))
        Next Wrd
Est-ce que quelqu'un connait une meilleure solution ?

Merci de votre aide !