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

Vba mettre contenu des cellules dans textbox

castor30

XLDnaute Occasionnel
Bonjour,
Dans Usf j'ai un texbox ou j'entre le nom d'une personne et je voudrais que les renseignement figurant sur la feuille2 colonne A à J s'affiche dans les Txb1 à Txb15
En vous remerciant
 

Theze

XLDnaute Occasionnel
Bonjour,

Je dirai qu'il te faut un peu changer ta façon de procéder. Pour le choix du nom, tu pose un ComboBox nommé "ComboBox1" (nom donné par défaut) qui sera rempli au lancement de la Form et en choissisant le nom, les TextBox seront remplis. Je suis parti du principe que les TextBox sont nommés Txb2 pour le premier (Txb1 étant celui qui sera remplacé par le ComboBox) et Txb10 pour le dernier (A à J avec les noms en colonne A). Code à mettre dans le module de la Form :
Code:
Private Sub UserForm_Initialize()

    Dim Plage As Range
   
    'sur la feuille active en colonne A à partir de A2
    With ActiveSheet: Set Plage = .Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With
   
    'charge le ComboBox
    ComboBox1.RowSource = Plage.Address
   
End Sub

Private Sub ComboBox1_Change()

    Dim Plage As Range
    Dim Cel As Range
    Dim Txt As Control
    Dim I As Integer
   
    'toujours sur la feuille active
    With ActiveSheet: Set Plage = .Range(.Cells(2, 1), .Cells(.Rows.Count, 1).End(xlUp)): End With
   
    'recherche le nom
    Set Cel = Plage.Find(ComboBox1.Text, , xlValues, xlWhole)
   
    'et inscrit les valeurs dans les TextBox
    For I = 2 To 10
        Me.Controls("Txb" & I).Text = Cel.Offset(, I - 1).Value
    Next I
   
End Sub
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…