Supportnet / Forum / Datenbanken
Suchen von Daten nach 2 Kriterien in einem Formular
Frage
Hallo,
ich habe folgendes Problem und zwar möchte ich in einem Formular in 2 ungebundenen Textfeldern nach zwei Nummer suchen. D.h. ich habe eine Abfrage erstellt in dennen mehrere Tabellen mit einandere verbunden sind.
Einfach ist es ja,wenn ich im Formular mit einem Makro nach nach einem Datensatz suche. Aber wie bekomme ich es hin,wenn beide Datensätze von einandere abhängig sind.Also ich möchte eine Datensatzsuche nach 2 Kriterien....
Wäre super, wenn mir jemand helfen kann
Antwort 1 von Teddy7
Üblicherweise zeigt man das Suchergebnis in einem Endlosformular an.
Dann kann man im Auswahlformular in x ungebundenen Feldern die gewünschten Kriterien eingeben und beim Öffnen des Ergebnisformulars mitgeben.
Das sieht dann im Klick-Ereignis des Such-Buttons etwa so aus:
dim xsuche as string
xsuche = ""
if not isnull(SuchPLZ) and SuchPLZ <> 0 then
xsuche = "PLZ = " & SuchPLZ
endif
if not isnull(SuchOrt) and SuchOrt <> "" and SuchOrt <> " " then
if xsuche <> "" then
xsuche = xsuche & " and "
endif
xsuche = xsuche & " Ort = ´" & SuchOrt & "´"
endif
DoCmd.OpenForm "FrmÜbersicht", acNormal, , xsuche, acFormReadOnly
Gruß
Teddy
Dann kann man im Auswahlformular in x ungebundenen Feldern die gewünschten Kriterien eingeben und beim Öffnen des Ergebnisformulars mitgeben.
Das sieht dann im Klick-Ereignis des Such-Buttons etwa so aus:
dim xsuche as string
xsuche = ""
if not isnull(SuchPLZ) and SuchPLZ <> 0 then
xsuche = "PLZ = " & SuchPLZ
endif
if not isnull(SuchOrt) and SuchOrt <> "" and SuchOrt <> " " then
if xsuche <> "" then
xsuche = xsuche & " and "
endif
xsuche = xsuche & " Ort = ´" & SuchOrt & "´"
endif
DoCmd.OpenForm "FrmÜbersicht", acNormal, , xsuche, acFormReadOnly
Gruß
Teddy
Antwort 2 von Skopi82
@ Teddy7
Morgen und erst mal danke für eine schnelle Hilfe!
Habe es gleich ausprobiert, es kamen auch keine Fehlermeldung. Aber leider passiert nichts!!
1. Frage....
Hab ich das richtig verstanden: Ich mache ein neues Formular auf. In diesem ziehe ich mir zwei ungebundenen Felder hin und ein Such-Button.
Wenn ich auf den Button klicken müßte er mir dann das Ergebinss meiner Suche anzeigen.
2. Frage...
Ist das Ergebnissformular leer oder ist das das Formular z.B. Kundenformular in dem ich suche?
Ist noch mal zum besseren Verständiss der Prozedur:
dim xsuche as string
xsuche = "" *Meine Variable xsuche wird was zugewiesen?*
if not isnull(SuchPLZ) and SuchPLZ <> 0 then *Die SuchPLZ ist der Name das ungebundenen Textfeldes?*
xsuche = "PLZ = " & SuchPLZ *Hier wird xsuche das Textfeld PLZ in dem gesucht werden soll (aus welchem Formular?aus dem Kundenformular?) und xsuche wird das suche Feld zugewiesen?*
endif
if not isnull(SuchOrt) and SuchOrt <> "" and SuchOrt <> " " then
if xsuche <> "" then
xsuche = xsuche & " and "
endif
xsuche = xsuche & " Ort = ´" & SuchOrt & "´"
endif
DoCmd.OpenForm "FrmÜbersicht", acNormal, , xsuche, acFormReadOnly
Danke für Deine Mühe!!!
MfG Skopi
Morgen und erst mal danke für eine schnelle Hilfe!
Habe es gleich ausprobiert, es kamen auch keine Fehlermeldung. Aber leider passiert nichts!!
1. Frage....
Hab ich das richtig verstanden: Ich mache ein neues Formular auf. In diesem ziehe ich mir zwei ungebundenen Felder hin und ein Such-Button.
Wenn ich auf den Button klicken müßte er mir dann das Ergebinss meiner Suche anzeigen.
2. Frage...
Ist das Ergebnissformular leer oder ist das das Formular z.B. Kundenformular in dem ich suche?
Ist noch mal zum besseren Verständiss der Prozedur:
dim xsuche as string
xsuche = "" *Meine Variable xsuche wird was zugewiesen?*
if not isnull(SuchPLZ) and SuchPLZ <> 0 then *Die SuchPLZ ist der Name das ungebundenen Textfeldes?*
xsuche = "PLZ = " & SuchPLZ *Hier wird xsuche das Textfeld PLZ in dem gesucht werden soll (aus welchem Formular?aus dem Kundenformular?) und xsuche wird das suche Feld zugewiesen?*
endif
if not isnull(SuchOrt) and SuchOrt <> "" and SuchOrt <> " " then
if xsuche <> "" then
xsuche = xsuche & " and "
endif
xsuche = xsuche & " Ort = ´" & SuchOrt & "´"
endif
DoCmd.OpenForm "FrmÜbersicht", acNormal, , xsuche, acFormReadOnly
Danke für Deine Mühe!!!
MfG Skopi
Antwort 3 von Teddy7
Hi Skopi !
Das Ergebnisformular ist ein Endlosformular mit Datenquelle Tabelle oder Abfrage.
Der Butto öffnet dieses Endlosformular unter Vorgabe der Selektionskriterien.
Diese Selektionskriterien müssen in der Variable xsuche zusammengestellt werden wie in einer where-Klausel.
SuchPLZ und SuchOrt in meinem Beispiel sind die Feldnamen der ungebundenen Felder auf dem Selektionsformular - hier werden die gewünschten Kriterien eingebenen.
PLZ und Ort sind die Feldnamen der Felder in der Datenquelle (also in Tabelle oder Abfrage) des Ergebnisformulars.
Mein Code bewirkt, dass im Feld xsuche dann z.B. drinnsteht:
PLZ = 47111 and Ort = ´Hintertupfing´
(wenn diese Daten in den Suchfeldern eingegeben wurden)
Vorteil dieser Technik:
Wenn in beiden Selektionsfeldern nichts eingeben wurde dann bringt das Ergebnisformular alle Datensätze. Wird nur ein Selektionsfeld gefüllt, dann wird auch nur darüber eingegrenzt.
Gruß
Teddy
Das Ergebnisformular ist ein Endlosformular mit Datenquelle Tabelle oder Abfrage.
Der Butto öffnet dieses Endlosformular unter Vorgabe der Selektionskriterien.
Diese Selektionskriterien müssen in der Variable xsuche zusammengestellt werden wie in einer where-Klausel.
SuchPLZ und SuchOrt in meinem Beispiel sind die Feldnamen der ungebundenen Felder auf dem Selektionsformular - hier werden die gewünschten Kriterien eingebenen.
PLZ und Ort sind die Feldnamen der Felder in der Datenquelle (also in Tabelle oder Abfrage) des Ergebnisformulars.
Mein Code bewirkt, dass im Feld xsuche dann z.B. drinnsteht:
PLZ = 47111 and Ort = ´Hintertupfing´
(wenn diese Daten in den Suchfeldern eingegeben wurden)
Vorteil dieser Technik:
Wenn in beiden Selektionsfeldern nichts eingeben wurde dann bringt das Ergebnisformular alle Datensätze. Wird nur ein Selektionsfeld gefüllt, dann wird auch nur darüber eingegrenzt.
Gruß
Teddy
Antwort 4 von Skopi82
@ Teddy
Jup, so hab ich mir´s ja auch gedacht! Läuft auch schon....
Danke für Deine Hilfe
Schönes Wochenende
Skopi
Jup, so hab ich mir´s ja auch gedacht! Läuft auch schon....
Danke für Deine Hilfe
Schönes Wochenende
Skopi

