Bonjour,
Dans le module de code de l'Userform, il faut que les valeurs entre guillemets correspondent exactement à celles entre crochets [] de votre document, crochets compris. Hors votre IA, pour une raison inconnu, les a encadrés entre "{{}}" donc il ne peut pas les retrouver. Corrigez comme je l'ai fait sur le screenshot ci-après pour la 1e ligne ("{{Dénomination sociale}}" -> "[Dénomination sociale]") pour tous les autres. Vérifiez que le texte à l'intérieur est également exact.
Ensuite le code bloque car dans le module Module1, le sub RemplacerBalise s'attend à ce que key soit une String, hors c'est un variant.
Donc remplacez le code par celui-ci.
Sub RemplacerBalise(balise As Variant, valeur As String)
With ActiveDocument.Content.Find
.Text = CStr(balise)
.Replacement.Text = valeur
.Forward = True
.Wrap = wdFindContinue
.Execute Replace:=wdReplaceAll
End With
End Sub
Sauvegardez et relancez le fichier, cela devrait fonctionner.
Attention, à votre place j'ajouterais peut-être un garde-fou qui vérifie que tous les champs sont remplis avant l'écriture dans le document. Autrement vous risquez d'avoir un champ vide. Si ça vous intéresse dites le moi, ou demandez à l'IA de vous ajouter ce check, ce n'est pas très difficile.