Программа 17.4. Кнопка Find First
Private Sub firstBttn_Click()
On Error GoTo SQLError
Data1.Recordset.FindFirst GenerateSQL()
If Data1.Recordset.NoMatch Then
MsgBox "No such record found"
'(He найдено ни одной записи)
End If
Exit Sub
SQLError:
MsgBox Err.Description
End Sub
Функция GenerateSQL(). Эта функция генерирует параметр поиска для всех операций Find. Значение, возвращаемое функцией GenerateSQL(), используется совместно методами Find. После вызова метода FindFirst программа проверяет свойство NoMatch. Если оно равно True, то программа выводит сообщение. Если запись, соответствующая критерию, найдена, то элемент управления Data автоматически устанавливается на эту запись.
Функция GenerateSQL() извлекает строку из текстового поля txtsearchValue, присоединяет ее к выбранному полю и возвращает строку, использующуюся как параметр метода Find. Большая часть кода приложения обрабатывает потенциальные ошибки. Основная работа выполняется функцией GenerateSQL(), которая формирует критерии поиска, как показано ниже.
Программа 17.5. Функция GenerateSQL()
Private Function GenerateSQL() As String
GenerateSQL = cmbFields.Text & " " & txtsearchValue
End Function