Range

Bonjour,
comment peut on réaliser un boucle pour effectuer une suite d'affectations des valeur situées dans une feuille "Bases des données", sachant que la ligne des données est variable, vers une suite de textbox1 to textbox55

Code
Private Sub Button100_Click()
Dim Num As Long
Dim celluletrouvee As Range
Dim ligne As Integer
Dim col As Integer
Dim I As Integer
Dim TxtB As String
'
'
'''Affecter la valeur de textbox1 dans le variable num'''
Num = CSng(UserForm4.TextBox1)

Set celluletrouvee = Range("A2:A200").Find(Num, lookat:=xlWhole)
If celluletrouvee Is Nothing Then
MsgBox ("pas trouvé")
Else
ligne = celluletrouvee.Row
col = celluletrouvee.Column
Som = col + 1
MsgBox ("Trouvé")
For I = 2 To 55
Dim R As Range
TxtB = "TextBox" & I
UserForm4.Controls(TxtB).Value = ''' Ici je veux insérer la ligne trouvé Ex B2, B3, .....B55 '''

Next I
End If
End Sub

2 réponses

  1. Bonjour sinane

    Je pense que le bout de code qui te manque est

    cells(ligne, colonne)
    Range("B55") équivalent à cells(55,2)

    ou Sheets("Bases des données").Cells(55, 2)
    0
    1. bonjour,
      enfin j'ai trouvé la solution
      code :
      Private Sub Button100_Click()
      Dim Num As Long

      Dim celluletrouvee As Range
      Dim test As Range
      Dim ligne As Integer
      Dim col As Integer
      Dim I As Integer
      Dim TxtB As String
      '
      '
      '''Affecter la valeur de textbox1 dans le variable num'''
      Num = CSng(UserForm4.TextBox1)

      Set celluletrouvee = Range("A:A").Find(Num, lookat:=xlWhole)
      If celluletrouvee Is Nothing Then
      MsgBox ("pas trouvé")
      Else
      ligne = celluletrouvee.Row
      col = celluletrouvee.Column
      MsgBox ("Trouvé")
      For I = 2 To 55
      TxtB = "TextBox" & I
      UserForm4.Controls(TxtB).Value = celluletrouvee([col], [I])
      Next I
      End If

      End Sub
      0
      1. Salut
        c'est super!
        Ptit remarque: ta variable ligne est-elle encore utile?
        dans celluletrouvee([col], [I]) je pense que tu peux te passer des"["

        Quand tu déclare une variable, je te conseil de mettre une majuscule.
        (Pas sur la première lettre, comme les fonctions vba)
        Excel remet automatiquement la majuscule quand tu écrit le code, cela te permet d'éviter les fautes de frappe
        cordialement
        0
      2. Bonjour sinane123

        Je ne comprend pas bien comment fonctionne ton code : celluletrouvee([col], [I]) .
        Ce que j'ai vu c'est qu'il ne marche pas si tu fais une recherche en une colonne autre que la "A".

        Je te propose : celluletrouvee.Offset(0, I) ou tu cherche la valeur à + 0 ligne et , à + I colonne
        0