B
Ben
Guest
Bonjour le forum,
Je sollicite une aide de votre part quant à mon souci. J'ai un formulaire qui remplit un tableau et les colonnes de ce tableau alimentent des combobox et des textbox, mais j'ai du mal à conjuguer les textox et les combobox. Private Sub UserForm_Initialize()
'Code donné par Hervé
Dim tablo, control As Variant
Dim col As Byte
Dim i As Integer, j As Integer
Dim data As Collection
Dim temp As String
tablo = Range('a1').CurrentRegion 'correspond aux données destinées aux box
For col = 1 To UBound(tablo, 2)
For i = 2 To UBound(tablo, 1) 'on commence à 2 pour éviter la ligne d'entete
For j = 2 To UBound(tablo, 1)
If tablo(i, col) < tablo(j, col) Then
temp = tablo(i, col)
tablo(i, col) = tablo(j, col)
tablo(j, col) = temp
End If
Next j
Next i
Next col
For col = 1 To UBound(tablo, 2)
Set data = New Collection
On Error Resume Next
For i = 2 To UBound(tablo)
data.Add CStr(tablo(i, col)), CStr(tablo(i, col))
Next i
On Error GoTo 0
For j = 1 To data.Count
'je souhaiterais faire remplir les combobox de la même manière
Controls('combobox' & col).AddItem data(j)
Next j
Set data = Nothing
Next col
End Sub
Merci de vos lumières
Je sollicite une aide de votre part quant à mon souci. J'ai un formulaire qui remplit un tableau et les colonnes de ce tableau alimentent des combobox et des textbox, mais j'ai du mal à conjuguer les textox et les combobox. Private Sub UserForm_Initialize()
'Code donné par Hervé
Dim tablo, control As Variant
Dim col As Byte
Dim i As Integer, j As Integer
Dim data As Collection
Dim temp As String
tablo = Range('a1').CurrentRegion 'correspond aux données destinées aux box
For col = 1 To UBound(tablo, 2)
For i = 2 To UBound(tablo, 1) 'on commence à 2 pour éviter la ligne d'entete
For j = 2 To UBound(tablo, 1)
If tablo(i, col) < tablo(j, col) Then
temp = tablo(i, col)
tablo(i, col) = tablo(j, col)
tablo(j, col) = temp
End If
Next j
Next i
Next col
For col = 1 To UBound(tablo, 2)
Set data = New Collection
On Error Resume Next
For i = 2 To UBound(tablo)
data.Add CStr(tablo(i, col)), CStr(tablo(i, col))
Next i
On Error GoTo 0
For j = 1 To data.Count
'je souhaiterais faire remplir les combobox de la même manière
Controls('combobox' & col).AddItem data(j)
Next j
Set data = Nothing
Next col
End Sub
Merci de vos lumières