این دو متد احتمالا کمک کنند:
Private Sub SearchButton_Click()
Dim strSQL As String
Dim strKeyword As String
Dim lngKeyword As Long
Dim strSearchField As String
' گرفتن مقدار واژه کلیدی از کنترل مربوطه
strKeyword = Me.KeywordTextBox.Value
' گرفتن نام فیلد برای جستجو از کنترل مربوطه
strSearchField = Me.SearchFieldComboBox.Value
' بررسی نوع داده فیلد جستجو
If IsNumeric(strKeyword) Then
' اگر واژه کلیدی عددی است
strSQL = "SELECT * FROM YourTableName WHERE " & strSearchField & " = " & strKeyword
Else
' اگر واژه کلیدی متنی است
strSQL = "SELECT * FROM YourTableName WHERE " & strSearchField & " LIKE '*" & strKeyword & "*'"
End If
' اجرای کوئری جستجو و نمایش نتایج در فرم یا گزارش
DoCmd.OpenQuery "YourQueryName", acViewNormal, acReadOnly
' تنظیم کردن نتایج در فرم یا گزارش
Me.RecordSource = strSQL
End Sub
و
Private Sub SearchButton_Click()
Dim strSQL As String
Dim strKeyword As String
Dim strSearchField As String
' گرفتن مقدار واژه کلیدی از کنترل مربوطه
strKeyword = Me.KeywordTextBox.Value
' گرفتن نام فیلد برای جستجو از کنترل مربوطه
strSearchField = Me.SearchFieldComboBox.Value
' ایجاد کوئری برای جستجو با واژه کلیدی عددی
strSQL = "SELECT * FROM YourTableName WHERE " & strSearchField & " = " & strKeyword
' اجرای کوئری جستجو و نمایش نتایج در فرم یا گزارش
DoCmd.OpenQuery "YourQueryName", acViewNormal, acReadOnly
' تنظیم کردن نتایج در فرم یا گزارش
Me.RecordSource = strSQL
End Sub
دو مثال برای جستجو.
نوشته شده توسط
mehrdad6464
سلام . در اکسس مقدار فیلدی رو نامبر گذاشتم وقتی برای فیلتر یا جستجو اقدام میکنم ارور میده اما اگر همون فیلد رو shorttext کنم برنامه به درستی کار میکنه . در فیلد عدد نوشتم مثلا 3000 . این مشکل رو حتی در id که اتونامبر هم هست . ممنون میشم راهنمایی کنید