- Код: Выделить всё
Private Sub modSer_Click()
Dim sl As String, ks As Integer, i1 As Integer, i2 As Integer, kn As Long, kss As Boolean
Carb.Recordset.MoveFirst
RSer.Clear
9 For i1 = 1 To Len(txtName.Text) 'определяем количество слов (true - 2, false - 1)
If Mid(txtName.Text, i1, 1) = " " Then
kss = True
GoTo 10
Else
kss = False
If Carb.Recordset.EOF = True Then
GoTo 10
End If
End If
Next i1
10 If kss = False Then 'поиск записей с одним словом
If Carb.Recordset.EOF = False Then
20 If txtName.Text = txtSer.Text Then
Exit Sub
Else
Carb.Recordset.MoveNext
On Error GoTo 500
GoTo 9
End If
End If
ElseIf kss = True Then 'поиск записей с двумя словами
110 ks = 0
If Carb.Recordset.EOF = False Then
For i2 = 1 To Len(txtName.Text)
If Mid(txtName.Text, i2, 1) = " " Then
ks = i2 - 1
GoTo 220
End If
Next i2
220 sl = Mid(txtName.Text, 1, ks)
If sl = txtSer.Text Then
RSer.AddItem txtName.Text
kn = kn + 1
Carb.Recordset.MoveNext
GoTo 9
Else
Carb.Recordset.MoveNext
On Error GoTo 500
GoTo 9
End If
ElseIf Carb.Recordset.EOF = True Then
500 MsgBox "Поиск завершен. Найдено записей - " & kn
End If
End If
End Sub
Ну как, разобрался кто нибудь?
А как это делать проще? Я читал об этом, но там что то было напутано и ни чего не получилось...