Supportnet / Forum / Datenbanken
Access - Datensatz suchen
Frage
Hallo Ihr alle !
Ich habe eine Access-Datenbank mit der Tabelle ´tblRechnungen´. Aus der Tabelle möchte ich bestimmte Datensätze suchen, die bestimmte Zeichenfolgen in der Spalte ´besonderheiten´ beinhalten. Dies soll über das Formular ´frmDatensatzsuchen´ realisiert werden. In dem Formular soll die Suchzeichenfolge im Textfeld ´suchbegriff´ eigegeben werden (wenn möglich ohne Wildcard) und die Abfrage über den Button ´cmdSuchen´ ausgeführt werden. Gestartet wird dadurch die Abfrage ´qryDatensatzsuchen´.
In der Abfrage habe ich das Kriterium >>Wie "*" & [Formulare]![frmDatensatzsuchen]![suchbegriff].[text] & "*" << eingetragen. Wenn ich die Abfrage direkt starte dann funzts. Wenn ich aber das Formular starte, bekomme ich alle Datensätze, die irgendeinen Eintrag in der Spalte ´besonderheiten´ beinhaltet.
Ich vermute, daß mir in der Ereignisprozedur zum Button ´cmdSuchen´ etwas fehlt. Die sieht bei mir so aus:
Private Sub cmdsuchen_Click()
On Error GoTo Err_cmdsuchen_Click
Dim stDocName As String
stDocName = "qryDatensatzsuchen"
DoCmd.OpenQuery stDocName, acNormal, acEdit
Exit_cmdsuchen_Click:
Exit Sub
Err_cmdsuchen_Click:
MsgBox Err.Description
Resume Exit_cmdsuchen_Click
End Sub
Könnt ihr mir bitte helfen - ich komm einfach nicht drauf !!
Danke
Antwort 1 von erik
Du rufst ausdrücklich die Text-Eigenschaft des Textfeldes auf. Das kann nur funktionieren, wenn das Steuerelement den Fokus besitzt. Das ist aber nicht der Fall, denn du musstest ja auf cmdSuchen klicken, um die Abfrage zu öffnen, womit sich der Fokus auf cmdSuchen verschoben hat. Vermutlich wird deswegen keine Zeichenfolge an die Abfrage übermittelt und dann greift der Filter "**", welcher natürlich alles zurückgibt.
Entferne demnach "[text]" aus dem Filter, dann wird automatisch die Standard-Eigenschaft Value abgefragt.
Entferne demnach "[text]" aus dem Filter, dann wird automatisch die Standard-Eigenschaft Value abgefragt.
Antwort 2 von boernie
Hallo,
danke für den Tipp mit dem Focus.
Entfernen des [text] hat funktioniert.
Ich hab´ dann noch die andere Version probiert:
Einfügen der Zeile
me!suchbegriff.setfocus
- hat auch funktioniert.
Ich hab´ aber noch einen anderen Tipp bekommen:
"Endlosformular"
Hab´ dann das ganze nach der Version aufgezogen.
Ist sicherer und bietet mehr Mögllchkeiten.
Danke trotzdem
Gruß aus Bayern
Boernie
danke für den Tipp mit dem Focus.
Entfernen des [text] hat funktioniert.
Ich hab´ dann noch die andere Version probiert:
Einfügen der Zeile
me!suchbegriff.setfocus
- hat auch funktioniert.
Ich hab´ aber noch einen anderen Tipp bekommen:
"Endlosformular"
Hab´ dann das ganze nach der Version aufgezogen.
Ist sicherer und bietet mehr Mögllchkeiten.
Danke trotzdem
Gruß aus Bayern
Boernie

