Range
sinane123
-
Iama Messages postés 324 Statut Membre -
Iama Messages postés 324 Statut Membre -
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
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
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)
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)
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
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
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
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