Const LB_FINDSTRINGEXACT = &H1A2
Приложение посылает сообщение LB_FINDSTRINGEXACT для нахождения первой строки в списке, точно соответствующей заданной строке без учета регистра
' удалим повторяющиеся элементы из списка
' добавьте на форму ListBox и CommandButton
Private Declare Function SendMessageByString Lib "user32" Alias "SendMessageA" ( _
ByVal hWnd As Long, _
ByVal wMsg As Long, _
ByVal wParam As Long, _
ByVal sParam As String) As Long
Const LB_FINDSTRINGEXACT = &H1A2
Private Sub Command1_Click()
Dim x As Long
Dim y As Long
Dim ListPos As Long
For x = 0 To List1.ListCount - 1
For y = 0 To List1.ListCount - 1
ListPos = SendMessageByString(List1.hWnd, LB_FINDSTRINGEXACT, 0, List1.List(x))
If ListPos <> x And ListPos <> -1 Then
List1.RemoveItem ListPos
End If
Next y
Next x
End Sub
Private Sub Form_Load()
List1.AddItem "вова"
List1.AddItem "Вова"
List1.AddItem "вася"
List1.AddItem "Петя"
List1.AddItem "Саша"
List1.AddItem "Олег"
List1.AddItem "ПЕТЯ"
End Sub