16
Октябрь
2008
Как удалить повторы в ComboBox?
Необходимо в ручную добавить не сколько разных элементов.
А при загрузке формы, ComboBox дополнится 10000 значениями, цифрой 1.
Option Explicit
Private Sub Command1_Click()
Dim i As Integer
Dim PrevIndex As Long 'индекс на последний не удаленный элемент
PrevIndex = Combo1.ListCount - 1
For i = Combo1.ListCount - 2 To 0 Step -1
If Combo1.List(i) = Combo1.List(PrevIndex) Then
Combo1.RemoveItem i 'совпадает с предыдущим, удалить
PrevIndex = PrevIndex - 1 'После удаления элемент сместился вверх, надо обновить указатель
Else
PrevIndex = i 'Не совпадает с предыдущим. Он станет новым предыдущим.
End If
Next i
End Sub
Private Sub Form_Load()
Dim i As Integer
For i = 1 To 10000
Combo1.AddItem Format$(1)
Next
End Sub