Textbox

Bonjour à tous et à toute.

Je me tourne vers vous car j'ai un problème qui dois être super bête mais malheureusement par mon manque de connaissance en VBA, je stagne.

Je m'explique, j'ai crée plusieurs textbox avec les quels j'ai associé avec une combobox. Dans une feuille nommé source, j'ai un tableau contenant en A = X, en B =Y et ainsi de suite.

Ensuite, je désire que quand je sélection un choix dans ma combobox, cela remplie les textboxs en rapport à choix, en y mettant les valeurs des lignes associés. Cad quand je choisis dans ma combobox A, la textbox1 me donne A2, la textbox2 B2, la textbox3 C2 ect.

Donc j'ai mis le code suivant qui marche super :

Option Explicit
Dim Ws As Worksheet

Private Sub ComboBox1_Change()
Dim Ligne As Long
Dim I As Integer

If Me.ComboBox1.ListIndex = -1 Then Exit Sub

Ligne = Me.ComboBox1.ListIndex + 2

For I = 1 To 3
    Me.Controls("textbox" & I) = Ws.Cells(Ligne, I + 1)
    Next I
End Sub

Jusque là, pas de probleme.

Maintenant quand je change le nom de mes textboxs pour me permettre de mieux structurés mes objects dans l'userform. Le mode débug, bloque sur

Me.Controls("textbox" & I) = Ws.Cells(Ligne, I + 1)

Ce qui est normal, vu que j'ai changé les noms.

Mais j'ai beau essayer de mettre les noms exacte ou de retourner le code dans tout les sens, pas moyen de trouver une solution.

Sois j'utilise pas la bonne méthode qui va avec les textbox et comme je les connais pas toute, je me tourne vers vous.

Je vous ai mis un fichier excel en exemple pour que vous voyez.

Merci d'avance de votre aide.

7a.xlsm (29.54 Ko)

Bonsoir dashil,

Avec ton code, il faut que tes 3 textbox portent le même nom....sinon, ça plante

Je les ai renommées TB1, TB2 et TB3

For I = 1 To 3
    Me.Controls("TB" & I) = Ws.Cells(Ligne, I + 1)
    Next I

Cordialement,

4copie-de-a-2.xlsm (17.41 Ko)

Merci xorsankukai de cette réponse rapide.

Je le saurais à l'avenir.

Du coup, cela me mène vers une autre question. Comment je fait si par exemple, je nomme mes textbox1, textbox2 et textbox3, charlie, magalie et roger.

Quel est la méthode/propriété qui me permettrais de faire la même chose?

Merci encore de la réponse.

Re,

Avec des noms spécifiques...

 Me.Controls("TBpattes") = Ws.Range("B" & Ligne)   'textbox nombres de pattes
    Me.Controls("TBterre") = Ws.Range("C" & Ligne)    'textbox terre, aqua ou aérien
    Me.Controls("TBmami") = Ws.Range("D" & Ligne)     'textbox mami ou pas

Cordialement,

5copie-de-a-3.xlsm (17.59 Ko)

Merci à toi.

Je tournais en rond depuis 1 semaine. Je vais pouvoir évouler sur mon projet.

Mille merci xorsankukai

Ravi d'avoir pu t'aider

A bientôt.

Bonjour

j'ais remis une textbox

A Voir

A+

Maurice

7a-1.xlsm (17.37 Ko)

Oui j'ai vu archer. Merci à toi aussi

Bonjour

j'ais changer plein de truc a toi de voir si ca peux te servir

j'ais enlever les index de la combobox a voir

A+

Maurice

6a-1.xlsm (18.82 Ko)
Rechercher des sujets similaires à "textbox"