Bonjour le forum,
Tout d'abord merci de m'accorder un peu de temps.
Je débute en VBA et j'ai réussi à grandement avancer sur mon projet avec toutes les aides présentes ici.
Malheureusement je me casse les dents sur une boucle que je souhaiterai créer afin d'alléger grandement mon code.
Pour vous faire un petit topo, je travaille sur WORD et j'ai plusieurs textbox dans mon fichier au nom txt_equipement_1 ; txt_equipement_2 ; ...
Je souhaiterai effectuer une boucle qui me permette de récupérer la valeur de ceux-ci, mais je n'arrive à créer une variable permettant d'incrémenter un + 1 au nom de la textbox.
Ou du moins une variable qui ne me crée pas une erreur. Créer une boucle ne me posera j'espère pas de problème mais cependant j'ai un problème sur la déclaration de variable ...
Mon petit bout de code "test" qui fonctionne et me renvoi bien la valeur de la textbox :
1 2 3 4 5 6 7 8
| Sub test()
Dim V_EQUIPEMENT As Object
Set V_EQUIPEMENT = txt_equipement_1
MsgBox V_EQUIPEMENT.Value
Set V_EQUIPEMENT = Nothing
End Sub |
Malheureusement quand je veux insérer une variable au nom de la textbox dans la déclaration de mon objet une erreur d'incompatibilité de type apparait :
1 2 3 4 5 6 7 8 9 10
| Sub test()
Dim V_EQUIPEMENT As Object
Dim i As Integer
i = 1
Set V_EQUIPEMENT = "txt_equipement_" & i
MsgBox V_EQUIPEMENT.Value
Set V_EQUIPEMENT = Nothing
End Sub |
J'ai également essayer de déclarer une variable String supplémentaire sans succès (objet requis) :
1 2 3 4 5 6 7 8 9 10 11 12
| Sub test()
Dim V_EQUIPEMENT As Object
Dim i As Integer
Dim V_NOM_TXTBOX As String
i = 1
V_NOM_TXTBOX = "txt_equipement_" & i
Set V_EQUIPEMENT = V_NOM_TXTBOX
MsgBox V_EQUIPEMENT.Value
Set V_EQUIPEMENT = Nothing
End Sub |
Je dois faire une grosse erreur quelques part, un oubli ou mal déclarer mes variables mais je n'arrive pas à mettre le doigt dessus, malgré beaucoup d'essai avec des codes trouvés ici et là.
Auriez-vous une solution pour me dépanner ou du moins pourriez vous m'aiguiller sur la marche à suivre ?
Un grand merci d'avance.
EDIT :
ActiveDocument.Controls(maVariable).Value
Ne fonctionne pas :/
Partager