SQL Abfrage mit ? Formular ?

Hallo,

ich habe eine access-datenbank mit 3 spalten.

  1. lfd. nummer
  2. artikel
  3. hersteller
    nun möchte ich einen button und ein eingabefeld erstellen um eine abfrage zu gestalen.
    beispiel:
    ich gebe in ein eingabefeld „dach“ ein und drücke auf den button „Suche nach Artikel“.
    Nun sollten mir alles Artikel angezeigt werden, die mit „Dach“ anfangen.
    das gleiche soll mit dem button „suche nach hersteller“ passieren.

ich kann zwar einfache sql-befehle schreiben, aber ich weiß nicht, wie ich ein eingabefeld erstelle und wie ich diesen inhalt mit meinem sql-befehl verbinde.

ich hoffe, ihr versteht, was ich meine, ich kann mich immer so schlecht ausdrücken.

DANKE im voraus

Julie

Hallo Julie,

zu „Suche nach Artikel“:

Öffne das Formular im Entwurfsmodus, füge ein ungebundenes Textfeld mit Namen ArtikelSuche
ein und erzeuge dort bei Nach Aktualisierung durch Doppelklick
auf diese leere Zeile eine Ereignisprozedur, öffne diese durch Klick auf die drei Punkte
und trage dort folgendes ein:

Me.RecordSource = ("SELECT lfdNummer, Artikel, Hersteller, \* " & \_
"FROM MeineTabelle " & \_
"WHERE (((Artikel)=[forms]![MeinFormular].[ArtikelSuche]));")

zu „Suche nach Hersteller“:

Ähnlich gehst Du vor mit der Suche nach Hersteller:
Textfeld HerstellerSuche erzeugen, usw.

Bei der Ereignisprozedur eintragen:

Me.RecordSource = ("SELECT lfdNummer, Artikel, Hersteller, \* " & \_
"FROM MeineTabelle " & \_
"WHERE (((Hersteller)=[forms]![MeinFormular].[HerstellerSuche]));")

Folgendes passiert jedesmal, wenn Du in einem dieser Textfelder einen
Begriff eingibts und ENTER drückst:

Das Formular wird nach diesem Begriff gefiltert.

Wenn Du eine Such-Kombination Artikel/Hersteller brauchst, erzeuge
einen neuen Button und trage bei der Eigenschaft Beim Klicken folgendes ein:

Me.RecordSource = ("SELECT lfdNummer, Artikel, Hersteller, \* " & \_
"FROM MeineTabelle " & \_
"WHERE (((Artikel)=[forms]![MeinFormular].[ArtikelSuche])) and (((Hersteller)=[forms]![MeinFormular].[HerstellerSuche]));")

Um wieder alle Datensätze anzuzeigen, erstelle einen Button mit Ereignisprozedur Beim Klicken :

Me.RecordSource = ("SELECT lfdNummer, Artikel, Hersteller, \* " & \_
"FROM MeineTabelle;")

Die Begriffe MeineTabelle und MeinFormular
mußt Du natürlich Deiner Datenbank entsprechend anpassen …

Ich hoffe, ich konnte Dir damit weiterhelfen - wenn´s irgendwo hakt,
einmal mal melden :wink:

gruss
moritzbock

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Rückfrage
Hallo moritzblock,

danke für deine hilfe. hat so geklappt.

nun habe ich nochmal eine frage.
was kann ich denn mit einem unterformular anstellen?
kann ich da z.b. abfrageergebnisse anzeigen lassen?

gruß
julie

Hallo Julie,

schön, daß ich Dir helfen konnte.

Schau Dir doch mal die Beispiel-DB an, die MS Access kostenlos mitliefert (Nordwind.MDB).

Die Formulare Bestellungen bzw. Kundenbestellungen enthalten Unterformulare, die abhängig vom Datensatz im Hauptformular zusätzliche Informationen aus anderen, verknüpften Tabellen liefern.

Außerdem empfehle ich Dir folgende Seiten, wenn Du mit Access mehr machen willst:

http://www.access-home.de/
http://www.kraasch.de/index.html (noch mehr Links)
http://www.fullaccess.de/index.htm

Diese Liste ist nicht vollständig, aber für den Anfang hilfreich :wink:

gruß
moritzbock

P.S.: ich fahre jetzt in den Ski-Urlaub, deshalb wünsche ich jetzt schon
Einen guten Rutschhhhhhhhhhhhhhhhh

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]