XL 2019 VBA remplir une combobox sous condition

donpopo

XLDnaute Occasionnel
Bonjour le forum,

Pour le moment, j'ai une procédure qui me remplit ma combobox.

VB:
'----------------------------------------------
'Valorisation de la ComboBox avec deux colonnes
'----------------------------------------------
Private Sub SetComboBox()
    Set f = Sheets("Locataires")
    Set Rng = f.Range("A5:B" & f.[A65000].End(xlUp).Row)
    Me.ComboBox1.ColumnCount = 2
    Me.ComboBox1.ColumnWidths = "90;50"
    Me.ComboBox1.List = Rng.Value
End Sub

Mais je souhaiterais que n'apparaissent pas dans cette liste certains 'locataires' si sur cette feuille "Locataires", la colonne 'S' n'est pas vide.

Me suis-je bien fait comprendre?

Merci pour vos conseils,
Donpopo
 
Solution
Bonjour,
Une solution :
VB:
Private Sub SetComboBox()
Dim Arr, i, f
Set f = Sheets("Locataires")
Arr = f.Range("A5:S" & f.[A65000].End(xlUp).Row).Value
    Me.ComboBox1.ColumnCount = 2
    Me.ComboBox1.ColumnWidths = "90;50"
For i = 1 To UBound(Arr)
   If Arr(i, 19) <> "" Then
      ComboBox1.AddItem Arr(i, 1)
      ComboBox1.List(ComboBox1.ListCount - 1, 1) = Arr(i, 2)
   End If
Next i
End Sub
A+

bof

XLDnaute Occasionnel
Bonjour,
Une solution :
VB:
Private Sub SetComboBox()
Dim Arr, i, f
Set f = Sheets("Locataires")
Arr = f.Range("A5:S" & f.[A65000].End(xlUp).Row).Value
    Me.ComboBox1.ColumnCount = 2
    Me.ComboBox1.ColumnWidths = "90;50"
For i = 1 To UBound(Arr)
   If Arr(i, 19) <> "" Then
      ComboBox1.AddItem Arr(i, 1)
      ComboBox1.List(ComboBox1.ListCount - 1, 1) = Arr(i, 2)
   End If
Next i
End Sub
A+
 

Discussions similaires

Statistiques des forums

Discussions
312 027
Messages
2 084 755
Membres
102 655
dernier inscrit
STA82700