我已經收到了我的一個問題,我的一位同事回答了這個問題,但是我想在這裏重新發帖,以防其他人遇到問題並提出問題,最後請注意。如果感興趣的話,原文如下:Original Post多字段搜索在您鍵入時顯示搜索結果
非常感謝社區的所有人,尤其是@Andre的幫助!
很奇怪,但是當我這樣做,它一直試圖把我的所有字母倒退。例如:如果我搜索「史密斯」,它會將其輸入爲「受害者」。我確信這與點擊事件有關,但我有一位朋友看着它,我認爲她已經破解了它!它看起來像這樣(我已經添加了對新代碼行的評論):
首先,文本框單擊事件,當您單擊該框時,它會清除文本並重置搜索(無需復位按鈕)
Private Sub txtSearch_Click()
Me.txtSearch.SetFocus 'new line of code
Me.txtSearch.Text = ""
Me.Requery
With Me.txtSearch
.SetFocus
.SelStart
End With
End Sub
這是實際的搜索,將搜索多個領域
Private Sub txtSearch_Change()
Dim strFilter As String
Dim sSearch As String
On Error Resume Next
If Me.txtSearch.Text <> "" Then
sSearch = "'*" & Replace(Me.txtSearch.Text, "'", "''") & "*'"
strFilter = "[Last_Name] Like " & sSearch & " OR [First_Name] Like " & sSearch & " OR [SSN] Like " & sSearch
Me.Filter = strFilter
Me.FilterOn = True
Else
Me.Filter = ""
Me.FilterOn = False
End If
If Me.Recordset.RecordCount = 0 Then 'new line of code
Me.Filter = "" 'new line of code
Me.FilterOn = False 'new line of code
Me.txtSearch.SetFocus 'new line of code
Me.txtSearch.Text = "" 'new line of code
Exit Sub 'new line of code
End If 'new line of code
With Me.txtSearch
.SetFocus
.SelStart = Len(Me.txtSearch.Text)
End With
End Sub
這似乎是偉大的工作。雖然我正在考慮完成這個問題,但我確實有一個問題,如果你能幫助我確定,爲什麼當我用.Value替換.Text時,這些字母會倒退?
非常感謝您的幫助!
如果@Andre在原帖中提供的答案解決了您的問題,請考慮接受它以幫助可能面臨同樣問題的其他用戶。 –
我的錯誤,我想我點了那個,當我把它。完成原始帖子。也謝謝@KostasK。爲了幫助您解決倒退文本。我認爲它與此有關,但我想我誤解了.SelStart做了什麼,它每次重新調整焦點。我將在我的數據庫中實施,看看我能否更多地理解它。謝謝! –
.SelStart(選擇開始)僅將光標定位到給定的值。如果沒有給出任何值,則它位於0。 –