Люди добрые, помогите. У самого мозга мало.
В комбе перечень имен.
Нужно, чтобы при написании имени в окошке ввода имени, в окошке сортировки появлялись имена начинающиеся с этой буквы.
Когда пишешь следующую букву, остаются имена уже начинающиеся с двух букв.
Пишешь третью - остаются имена начинающиеся на эти три буквы.
Отсортировать по первой букве я сделал, а вот чтобы шла сортировка дальше никак.
Option Explicit
Dim I, J As Integer
Dim Letter As String
Private Sub Form_Load()
'загружаем в Combo1 213 имён из файла
Open App.Path & "\name.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, Letter
Combo1.AddItem Letter
Loop
Close
Combo1.AddItem ""
Combo1.Text = ""
End Sub
' В Letter хранятся загруженные из файла имена
Private Sub Text1_Change()
Dim ksp As Integer
Dim p As Integer
Dim kbt As Integer
Dim kbp As Integer
'кол-во всех стровек в Combo1
'kbt = Combo1.ListCount
p = 0 'Номер текущей строки
'К-во введенных в Text1 букв
ksp = Len(Text1.Text)
'Вводими первую букву в окно Text1 и сравниваем с 1-й буквой
'1-й строки из Combo1. Если буквы совпадают печатаем
'строку в List1. Если первые буквы не совпадают, переходим
'к следующей строке.
'Когда все первые буквы выбраны, выбираем из окна Text1
'первую строчку и сравниваем уже две буквы. При совпадении
'результат заносим в List1
For kbt = Combo1.ListCount To 1 Step -1
If LCase(Left(Combo1.List(p), ksp)) = LCase(Text1.Text) Then
List1.AddItem Combo1.List(p)
kbt = kbt - 1
p = p + 1
Else
End If
Next
End Sub
После ввода третьей буквы
В комбе перечень имен.
Нужно, чтобы при написании имени в окошке ввода имени, в окошке сортировки появлялись имена начинающиеся с этой буквы.
Когда пишешь следующую букву, остаются имена уже начинающиеся с двух букв.
Пишешь третью - остаются имена начинающиеся на эти три буквы.
Отсортировать по первой букве я сделал, а вот чтобы шла сортировка дальше никак.
Option Explicit
Dim I, J As Integer
Dim Letter As String
Private Sub Form_Load()
'загружаем в Combo1 213 имён из файла
Open App.Path & "\name.txt" For Input As #1
Do While Not EOF(1)
Line Input #1, Letter
Combo1.AddItem Letter
Loop
Close
Combo1.AddItem ""
Combo1.Text = ""
End Sub
' В Letter хранятся загруженные из файла имена
Private Sub Text1_Change()
Dim ksp As Integer
Dim p As Integer
Dim kbt As Integer
Dim kbp As Integer
'кол-во всех стровек в Combo1
'kbt = Combo1.ListCount
p = 0 'Номер текущей строки
'К-во введенных в Text1 букв
ksp = Len(Text1.Text)
'Вводими первую букву в окно Text1 и сравниваем с 1-й буквой
'1-й строки из Combo1. Если буквы совпадают печатаем
'строку в List1. Если первые буквы не совпадают, переходим
'к следующей строке.
'Когда все первые буквы выбраны, выбираем из окна Text1
'первую строчку и сравниваем уже две буквы. При совпадении
'результат заносим в List1
For kbt = Combo1.ListCount To 1 Step -1
If LCase(Left(Combo1.List(p), ksp)) = LCase(Text1.Text) Then
List1.AddItem Combo1.List(p)
kbt = kbt - 1
p = p + 1
Else
End If
Next
End Sub
После ввода третьей буквы