Visual Basic Pour Word

oldrasta007 Messages postés 160 Statut Membre -  
oldrasta007 Messages postés 160 Statut Membre -
Bonjour à tous,




quelqu'un peut-il m'expliquer ce que signifie exactement ce bout de code:
Dim Nom As String
Set Nom = ActiveDocument.Bookmarks("Nom").Range
Nom.Text = Me.TextBox1.Value
car en effet lorsque je l'applique sur le bouton "validez", et que je lance le programme, il surligne Nom et une boite de dialogue s'ouvre en me disant : Objet requis.

Par ailleurs, si quelqu'un a un bon tutoriel complet visual basic pour Word en pdf ou en vidéo je suis preneur.

Merci à tous
A voir également:

1 réponse

m@rina Messages postés 26183 Statut Contributeur 11 479
 
Bonjour,

Il serait plus logique de commencer par nous dire ce que tu veux faire plutôt que de demander la traduction d'un morceau de code.

Ce code est mauvais :

Set Nom
=> c'est une déclaration de variable Objet, or le contenu d'un signet n'est pas une variable objet, l'objet c'est le contenant (le signet (bookmark) en l'occurrence) d'où l'erreur "Objet requis".

Nom.Text = Me.TextBox1.Value 
: on suppose que tu veux afficher le contenu du signet dans la Textbox. Si c'est ça on fait l'inverse parce que là on est en train de réaffecter la variable "nom" au contenu de la Textbox, donc c'est
Nom = Me.TextBox1.Value

(le Text est inutile)

donc ce bout de macro devrait être (si j'ai bien compris la finalité)
Dim Nom As String
Nom = ActiveDocument.Bookmarks("Nom").Range
Me.TextBox1.Value = Nom


m@rina
1
oldrasta007 Messages postés 160 Statut Membre 2
 
Merci Bcp m@rina tu as très bien supposé ce que je voulais faire, et ton explication me paraît clair et limpide comme de l'eau de roche, et j'apprécie aussi la rapidité avec laquelle tu as répondu à ma question. Encore merci, je vais aller essayer et te dis quoi après.

Encore un grand Merci, il devrait y avoir beaucoup de monde comme toi sur terre. Bien à toi.
0