Мне нужно получить поиск для поиска «нечетких совпадений» в базе данных при поиске по фамилии.Я включил следующую функцию, чтобы включить функцию SoundEx, которая не имеет проблем.
У меня возникают проблемы, когда речь идет о построении SQL для поиска в базе данных, вызывающей функцию SoundEx на лету.Я знаю, что функции VBA можно вызывать в инструкциях SQL, но, похоже, они не работают должным образом.
Private Sub cmdSearch_Click()
Dim LSQL As String
Dim LSearchString As String
If Len(txtSearchString) = 0 Or IsNull(txtSearchString) = True Then
MsgBox "You must enter a search string."
Else
LSearchString = txtSearchString
LSQL = "SELECT * FROM TVictim "
LSQL = LSQL & "WHERE Soundex([Victim Surname]) = " & Soundex(LSearchString) & ";"
frmVictim.Form.RecordSource = LSQL
lblTitle.Caption = "Matching Victim Details: Filtered by '" & LSearchString & "'"
txtSearchString = ""
MsgBox "Results have been filtered. All Victim Names containing " & LSearchString & "."
End If End Sub
Когда я ввожу строку в форму и нажимаю кнопку, я прошел через:и в тот момент, когда он строит SQL, он выдает командное окно с выводом SoundEx текста в окне поиска и другим полем для ввода данных.
Некоторое время возился с этим и могу 'Кажется, не найти пример, который помогает.