Remplissage textbox à partir de cellules

  • Initiateur de la discussion Initiateur de la discussion Cougar
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Cougar

XLDnaute Impliqué
Bonjour,

Lorsque l'userform apparaît, tous les textbox doivent avoir leur valeur provenant des cellules Z3:Z22.

Voici le code mais il ne fonctionne pas. 🙁

Sub Bouton2_Clic()
Dim tabtemp As Variant
Dim O As Integer

With Worksheets("Feuil1")
O = .Range("z22").End(xlUp).Column
tabtemp = .Range("z3:z22" & O).Value
End With


For i = 1 To 20
TextBox1 = tabtemp(O, 0)
TextBox2 = tabtemp(O, 1)
TextBox3 = tabtemp(O, 2)
TextBox4 = tabtemp(O, 3)
TextBox5 = tabtemp(O, 4)
TextBox6 = tabtemp(O, 5)
TextBox7 = tabtemp(O, 6)
TextBox8 = tabtemp(O, 7)
TextBox9 = tabtemp(O, 8)
TextBox10 = tabtemp(O, 9)
TextBox11 = tabtemp(O, 10)
TextBox12 = tabtemp(O, 11)
TextBox13 = tabtemp(O, 12)
TextBox14 = tabtemp(O, 13)
TextBox15 = tabtemp(O, 14)
TextBox16 = tabtemp(O, 15)
TextBox17 = tabtemp(O, 16)
TextBox18 = tabtemp(O, 17)
TextBox19 = tabtemp(O, 18)
TextBox20 = tabtemp(O, 19)
Next i

UserForm1.Show
End Sub

Quel est le problème.

Merci de votre aide
 
Re : Remplissage textbox à partir de cellules

Bonjour


Le problème vient du fait qu'il y a plusieurs problèmes
Voici le premier

Code:
With Worksheets("Feuil1")
      O = .Range("z22").End(xlUp).Column
    tabtemp = .Range("z3:z22" & O).Value
End With

Je t'indiquerai le second après mon petit dej 😉
 
Re : Remplissage textbox à partir de cellules

Salut Cougar, Re Staple🙂 et BonApp, le Forum

Ici peut-être le second
Remplacer

Code:
For i = 1 To 20
       TextBox1 = tabtemp(O, 0)
       TextBox2 = tabtemp(O, 1)
       TextBox3 = tabtemp(O, 2)
       TextBox4 = tabtemp(O, 3)
       TextBox5 = tabtemp(O, 4)
       TextBox6 = tabtemp(O, 5)
       TextBox7 = tabtemp(O, 6)
       TextBox8 = tabtemp(O, 7)
       TextBox9 = tabtemp(O, 8)
       TextBox10 = tabtemp(O, 9)
       TextBox11 = tabtemp(O, 10)
       TextBox12 = tabtemp(O, 11)
       TextBox13 = tabtemp(O, 12)
       TextBox14 = tabtemp(O, 13)
       TextBox15 = tabtemp(O, 14)
       TextBox16 = tabtemp(O, 15)
       TextBox17 = tabtemp(O, 16)
       TextBox18 = tabtemp(O, 17)
       TextBox19 = tabtemp(O, 18)
       TextBox20 = tabtemp(O, 19)
    Next i
Par
Code:
[COLOR=BLUE]With[/COLOR] Userform1
    [COLOR=BLUE]For[/COLOR] i = 1 [COLOR=BLUE]To[/COLOR] 20
        .Controls("TextBox" & i) = tabtemp(O, i - 1)
    [COLOR=BLUE]Next[/COLOR] i
    .Show
[COLOR=BLUE]End With[/COLOR]
ce serait plus judicieux mais ne voyant pas la configuration de ton fichier

Bonne Journée
 
Dernière édition:
Re : Remplissage textbox à partir de cellules

Re


Entre deux biscottes

A titre d'illustration

VB:
Sub a()
Dim tabtemp, O&, i&, j&
With Worksheets("Feuil1")
'création de données de test
    With [A1:C10]
        .Formula = "=ROW()*COLUMN()"
        .Value = .Value
    End With
'fin  données de test
O = .Range("A10").End(xlToRight).Column
MsgBox .Range("A1:A10").Resize(, O).Address
tabtemp = .Range("A1:A10").Resize(, O).Value
End With

For i = LBound(tabtemp, 1) To UBound(tabtemp, 1)
    For j = LBound(tabtemp, 2) To UBound(tabtemp, 2)
        MsgBox tabtemp(i, j)
    Next j
Next i
End Sub
PS: bonjour Dull, bonjour JNP
 
Dernière édition:
Re : Remplissage textbox à partir de cellules

Salut Cougar, Jean-Marie 🙂,
Euh, il y a plus de problèmes que de choses justes 😛
Code:
Private Sub CommandButton2_Click()
Dim TabTemp
Dim I As Integer
With Worksheets("Feuil1")
Set TabTemp = .Range("z3:z22")
End With
For I = 1 To 20
Me.Controls("TextBox" & I) = TabTemp(I)
Next I
End Sub
fonctionne 😀.
Le nom de la Sub est étrange, mais bon...
Code:
O = .Range("z22").End(xlUp).Column
Tu pointes sur Z22, tu vas vers le haut, et tu récupères la valeur de la colonne 😕 ??? Et pourquoi faire, tu sait que ce sera forcément Z...
Code:
tabtemp = .Range("z3:z22" & O).Value
Pour affecter des Range à un tableau, il faut utiliser Set, et surtout pas Value 🙄... De plus, avec ton O, ça donne Z3:Z2226...
Code:
For i = 1 To 20
Ne sert à rien vu que tu n'utilises pas I (sauf en l'utilisant comme ci-dessus 😉).
Code:
TextBox1 = tabtemp(O, 0)
va chercher dans un tableau à 2 dimension 26 et 0, alors que tu as un tableau à 1 dimension contenant Z3:Z22 😱.
Staple1600 à dit:
Je t'indiquerai le second après mon petit dej 😉
Bon appétit 😀
Bon courage 😎
Ajout : Salut Dull 😉.
JM, je t'ai déjà dit, pas de biscotte sur le clavier 😛
 
Dernière édition:
Re : Remplissage textbox à partir de cellules

Re


JNP, si en plus tu rajoutes des problèmes 😉
EDITION ( des problèmes à mes habitudes d'écritute "vbéale" , car oui je l'avoue le code de JNP tel quel fonctionne mais il perturbe les fondements de ma culture Excelienne )
/FIN EDITION
VB:
Private Sub CommandButton1_Click() 
Dim TabTemp
Dim I As Long
With Worksheets("Feuil1")
TabTemp = .Range("A1:A5").Value
End With
MsgBox TabTemp(1, 1)
For I = 1 To 5
Me.Controls("TextBox" & I) = TabTemp(I, 1)
Next I
 
Dernière édition:
Re : Remplissage textbox à partir de cellules

Re

JNP

Ah bah pour moi, qui suis habitué au classicisme , ta manière d'écrire ton VBA m'étonne
J'ai appris cette forme de syntaxe
Code:
Dim toto As range
Set toto=[A1:A5]
Code:
Dim toto
toto=Array(1,2,3,4)
Désolé 😱

PS
: Non mon code ne plante pas
(Je viens de m'amuser un créer un Userform avec 5 textbox juste pour tester
J'ai même sacrifier mon petit déjà pour cela.

Quand à ma voisine , je n'ose imaginé l'état de sa langue vu son âge 😉
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
896
Réponses
7
Affichages
867
Réponses
7
Affichages
1 K
Retour