FindRecord




'***** PRIMO : (according to vb the fastest way)


'make use of the vb-command SEEK. For example:


Dim rsList as recordset
Dim dbDName as database
Dim searchstring

Set dbDName = opendatabase(yourdatabase)
Set rsList = dbDName.openrecordset(yourtable)
rsList.Index = (name_of_your_index)

rsList.Seek "=", (searchstring)
If Not rsList.Nomatch then
'show record
Else
Msgbox "nothing found.."
End if

'BTW: The index (name_of_your_index) MUST exist!


'***** Second0: (I don't really like this method)


Dim rsList as recordset
Dim dbDName as database
Dim searchstring

Set dbDName = opendatabase(yourdatabase)
Set rsList = dbDName.openrecordset(yourtable)
rsList.FindFirst "[field_you_want_to_search] = " & (searchstring)
If Not rsList.Nomatch then
'show record
Else
rsList.FindNext
End if

'BTW: if your searchstring is Text then don't forget the quotes!


rsList.FindFirst "[field_you_want_to_search] = '" & (searchstring) _
& "'"

***** Terzo: (slow but sometime very handy)

Dim rsList as recordset
Dim dbDName as database
Dim searchstring

Set dbDName = opendatabase(yourdatabase)
Set rsList = dbDName.openrecordset(yourtable)
Do While Not rsList.EOF
'if yoursearchfield = 0 -> the first field
if rsList.Fields(0).Value = searchstring Then
'show record
endif
rsList.Movenext
Loop

'***** Quarto: Last way to find out is to make use of SQL:


Dim rsList as recordset
Dim dbDName as database
Dim searchstring
Dim SQL$

SQL$ = "SELECT * FROM " & (yourdatabase)
SQL$ = SQL$ & " WHERE " & (yoursearchfield) & " = " & searchstring

Set dbDName = opendatabase(yourdatabase)
Set rsList = dbDName.openrecordset(SQL$)
Do While Not rsList.EOF
'show record
rsList.Movenext
Loop











( findrecord.html )- by Paolo Puglisi - Modifica del 17/12/2023