Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Autres textbox en séries...

AlainProviste

XLDnaute Nouveau
Bonjour,

Dans ma feuille de calcul j'ai 3 colonnes (ABC ) de valeurs numériques sur une plage de 100.
Je souhaiterais que ces colonnes soient envoyées à l'identique dans 100 textbox .
Dans une autre cas j'ai utilisé le code ci dessous pour une colonne mais je ne parviens pas à faire de même pour 3 colonnes.

Dim x as integer
For x = 1 To 100
Me.Controls("Textbox1" & x).Value = Sheets("FEUIL1").Range("B" & x).Value
Next x

Merci par avance de m'apporter votre aide.
 

Pièces jointes

  • Classeur1.xlsm
    16.7 KB · Affichages: 7
Solution

cp4

XLDnaute Barbatruc
bonsoir, retire le 1 à la fin de textbox1
VB:
Me.Controls("Textbox" & x).Value = Sheets("FEUIL1").Range("B" & x).Value
 

laurent950

XLDnaute Accro
Bonsoir @AlainProviste, @cp4

VB:
Sub Macro4()
Dim x, y, cpt As Integer
cpt = 1
With Sheets("FEUIL1")
For x = 1 To 8 ' Nombre de Lignes 9, 10, 11, 12 Ect  (Pour une Ligne = 3 TextBox)
    For y = 1 To 3
        UserForm1.Controls("Textbox" & cpt).Value = .Range(.Cells(x + 1, y), .Cells(x + 1, y)).Value
        Debug.Print UserForm1.Controls("Textbox" & cpt).Value
        cpt = cpt + 1
    Next y
Next x
End With
UserForm1.Show
x = Empty: y = Empty: cpt = Empty
End Sub
 

AlainProviste

XLDnaute Nouveau
Merci Laurent950 ta macro fonctionne à merveille. Cependant j'ai omis de préciser dans ma question que je souhaitais actionner la "macro4 avec un bouton de commande sur mon userform. J'ai tenté de le faire mais j'obtiens le message d'erreur 401="Feuille déjà affichée ; affichage modal impossible." comment remédier à cette erreur ?
 

laurent950

XLDnaute Accro
je souhaitais actionner la "macro4 avec un bouton de commande sur mon userform.
il faut Créer un bouton commande dans l'Userform1
Coller ce code :
Code:
Private Sub CommandButton1_Click()
    Macro4
End Sub

Modifier le code Macro4 : UserForm1.Show
VB:
Sub Macro4()
Dim x, y, cpt As Integer
cpt = 1
With Sheets("FEUIL1")
For x = 1 To 8 ' Nombre de Lignes 9, 10, 11, 12 Ect  (Pour une Ligne = 3 TextBox)
    For y = 1 To 3
        UserForm1.Controls("Textbox" & cpt).Value = .Range(.Cells(x + 1, y), .Cells(x + 1, y)).Value
        Debug.Print UserForm1.Controls("Textbox" & cpt).Value
        cpt = cpt + 1
    Next y
Next x
End With
x = Empty: y = Empty: cpt = Empty
End Sub

Puis choisir a qu'elle moment vous lancer l'affichage de l'userform1 (Ou placer le code)
Code:
Public sub AfficheUserform1()
  Me.Show
End Sub
 

AlainProviste

XLDnaute Nouveau
Excellent ! merci beaucoup et désolé pour mes lacunes mais vous l'aviez compris je ne maitrise pas vraiment le VBA. Bonne soirée.
 

Discussions similaires

Réponses
1
Affichages
168
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…