Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
über Formular Suche ausführen und Ergebnisse anzeigen
zurück: 2 Formular + Registersteuerelemt : Ein und Ausblenden weiter: Formular in Register abspeichern Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Besth
Einsteiger


Verfasst am:
08. Feb 2007, 10:50
Rufname:

über Formular Suche ausführen und Ergebnisse anzeigen - über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

Hallo,

also ich hab folgendes Problem:
Ich habe ein Fomular in dem man über Kombofelder und manuelle Eingabe eine Suchmaske füllen kann.
Wenn man dann auf "Suchen" (Button) klickt, soll eine Abfrage gestartet werden. Das klappt auch soweit nur das in meiner Abfrage keine Eingaben berücksichtigt werden bzw es wird garnichts ausgegeben.
Wenn ich nun den Inhalt der Kombobox änder und die Abfrage manuell ausführe (über Abfrage -> "AbfrageSuche" öffnen) klappt alles...
Irgendwie ist da ein Fehler zwischen dem Button und dem Öffnen des Dokuments. Aber welcher? Very Happy
Die Abfrage funktioniert eigentlich.
Hier mal ein paar Screeshots wie meine DB aussieht!
das ist die Abfrage und das Formular:

Das Ergebnis der Abfrage nach klicken auf den Button und nach manuellem öffnen:

Hier noch der Code vom Button:
Code:
Private Sub Befehl2_Click()
    DoCmd.OpenQuery "AbfrageSuche", acViewNormal, acEdit
End Sub
Ich häng da jetzt echt schon ne Weile und komm nicht weiter. Wäre nett wenn mir jemand helfen könnte.
Bei Fragen -> fragen ;)

MfG Besth
Nachtrag: Besth am 08. Feb 2007 um 10:05 hat folgendes geschrieben:
Oder wäre es möglich gleich eine Art Tabelle unter dem Formular anzuzeigen? Also ohne das ein neues Fenster aufgeht?
Das das Ergebnis-Feld als Tabelle unter dem Formular erscheint!
Wenn ja, wie? ;)
derArb
getting better


Verfasst am:
08. Feb 2007, 12:25
Rufname: derArb
Wohnort: Berlin


AW: über Formular Suche ausführen und Ergebnisse anzeigen - AW: über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

hallo,

was steht denn in der SQL Ansicht der Abfrage?

Du kannst ein Formular in Datenblattansicht machen und die Abfrage als Datensatzherkunft nehmen.

mfg
derArb

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.
Besth
Einsteiger


Verfasst am:
08. Feb 2007, 12:36
Rufname:

AW: über Formular Suche ausführen und Ergebnisse anzeigen - AW: über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

Code:
SELECT   fax.seriennummer, faxtyp.name, standort.name, standort.ort,
         fax.haus, fax.etage, fax.zimmer, fax.faxnummer, status.beschreibung
FROM     ((fax
           INNER JOIN faxtyp
           ON fax.faxtyp = faxtyp.id)
          INNER JOIN standort
          ON fax.standort = standort.id[color=violet])
         INNER JOIN status
         ON fax.status = status.id
WHERE    fax.seriennummer) Like [Forms]![FormularSuche]![Kombinationsfeld0]
ORDER BY fax.id;
hm ok hab das gefunden mit dem einbinden, aber erst muss halt der Bezug zwischen Kombofeld -> Abfrage stimmen!
derArb
getting better


Verfasst am:
08. Feb 2007, 12:41
Rufname: derArb
Wohnort: Berlin

AW: über Formular Suche ausführen und Ergebnisse anzeigen - AW: über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

hallo,

ist das Kombinationsfeld ungebunden?
welchen Herkunftstyp hat es?
welche Datenherkunft?

mfg
derArb

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.
Besth
Einsteiger


Verfasst am:
08. Feb 2007, 12:50
Rufname:


AW: über Formular Suche ausführen und Ergebnisse anzeigen - AW: über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

Es ist ungebunden.
Die Daten kommen aus der Tabelle fax, dort stehen alle Faxdaten drinnen (auch diese Seriennummer) und diese wird einfach nur in dem Kombofeld aufgelistet.
Herkunftstyp: Tabelle/Abfrage
Datenherkunft: SELECT fax.id, fax.seriennummer FROM fax;

Ich hab gleich mal noch einen Screenshot gemacht, falls noch weitere Eigenschaften interessant für dich sind:
Willi Wipp
Moderator


Verfasst am:
08. Feb 2007, 12:51
Rufname:
Wohnort: Raum Wiesbaden

Re: über Formular Suche ausführen und Ergebnisse anzeigen - Re: über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

Hi Besth,

auf die Eigenschaft Text eines Steuerelementes zuzugreifen muss das entsprechenden Steuerelement den Fokus haben.
Code:
SELECT   fax.seriennummer, faxtyp.name, standort.name, standort.ort,
         fax.haus, fax.etage, fax.zimmer, fax.faxnummer, status.beschreibung
FROM     ((fax
           INNER JOIN faxtyp
           ON fax.faxtyp = faxtyp.id)
          INNER JOIN standort
          ON fax.standort = standort.id)
         INNER JOIN status
         ON fax.status = status.id
WHERE    fax.seriennummer Like Forms![FormularSuche]![Kombinationsfeld0]
ORDER BY fax.id;
Wenn Du nicht die gebundene Spalte haben willst, dann so
Code:
Eval("Forms![FormularSuche]![Kombinationsfeld0].Column(1)")
Die 1 spricht die 2. Spalte an.

PS: Die Grafiken kann ich leider Alle nicht sehen, werden von unserer Firewall als Erotisch geblockt Wink

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Besth
Einsteiger


Verfasst am:
08. Feb 2007, 13:06
Rufname:

Re: über Formular Suche ausführen und Ergebnisse anzeigen - Re: über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

also mit dem Eval... klappt es, vielen Dank an dich Smile
Nachtrag: Besth am 08. Feb 2007 um 12:22 hat folgendes geschrieben:
Jetzt weiß ich auch wieso -> Der Assistent hat 2 Spalten beim Kombifeld angelegt :/ Klar das er mit dem normalen SQL-String "daneben greift"

Zitat:
PS: Die Grafiken kann ich leider Alle nicht sehen, werden von unserer Firewall als Erotisch geblockt
Hui! Das ja ein Ding.
Liegt sicherlich an dem russischem Server Very Happy

So jetzt stellt sich mir nur noch die Frage, wie ich diese ganze Abfrage in mein Formular einbinde, so dass kein neues Fenster aufgeht.
Also eingebunden ist es schon (per Unterformular-Assistent), aber wie muss ich den Button-Befehl umändern das der sozusagen nur den Inhalt unten aktualisiert.
Willi Wipp
Moderator


Verfasst am:
08. Feb 2007, 13:25
Rufname:
Wohnort: Raum Wiesbaden

Re: über Formular Suche ausführen und Ergebnisse ...(II) - Re: über Formular Suche ausführen und Ergebnisse ...(II)

Nach oben
       Version: Office XP (2002)

Hi Besth,

das koenntest Du mit einem Requery auf das Formular im Unterformular-Steuerelement machen
Code:
    Me![Unterformular-Steuerelement].Form.Requery

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Gast



Verfasst am:
09. Feb 2007, 08:17
Rufname:

AW: über Formular Suche ausführen und Ergebnisse anzeigen - AW: über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

Besth am 08. Feb 2007 um 13:03 hat folgendes geschrieben:
ahhh ok, Requery ist der Befehl.
Vielen Dank für die schnelle und kompetente Hilfe!

Ich denke damit ist dieses Problem (und der Threat) gelöst ;)

hmpf ich nochmal :/
Mir stellt sich nun doch noch ein neues Problem:

Ich habe jetzt mehrere Komboboxen die Suchkriterien enthalten.
Wenn ich jede Kombobox ausfülle kommt auch das richtige Suchergebnis. Problem ist wenn ich ein Suchkriterium frei lasse bringt er mir nix mehr. Was eigentlich auch logisch ist, da meine Abfrage wie folgend aufgebaut ist:
Code:
SELECT   fax.seriennummer, faxtyp.name, standort.name, standort.ort, fax.haus,
         fax.etage, fax.zimmer, fax.faxnummer, fax.faxtyp, hersteller.id,
         hersteller.hersteller, status.beschreibung
FROM     (((fax
            INNER JOIN faxtyp
            ON fax.faxtyp = faxtyp.id)
           INNER JOIN standort
           ON fax.standort = standort.id)
          INNER JOIN status
          ON fax.status = status.id)
         INNER JOIN hersteller
         ON faxtyp.hersteller = hersteller.id
WHERE    fax.seriennummer Like Eval("Forms![FormularSuche]![kombiSeriennummer].Column(1)")
AND      faxtyp.name Like Eval("Forms![FormularSuche]![kombiFaxtyp].Column(1)")
AND      standort.name Like Eval("Forms![FormularSuche]![kombiOrt].Column(1)")
AND      standort.ort Like Eval("Forms![FormularSuche]![kombiOrt].Column(2)")
AND      fax.faxnummer Like Eval("Forms![FormularSuche]![kombiFaxnummer].Column(1)")
AND      hersteller.hersteller Like Eval("Forms![FormularSuche]![kombiHersteller].Column(1)")
ORDER BY fax.id;
Sozusagen wenn das Feld frei bleibt, sucht er alle DB-Einträge wo "nix" drin steht.
Wie muss ich denn die Abfrage umbauen damit es mir möglich ist die Felder frei zu lassen. Oder muss ich für jeden Fall eine eigene Abfrage entwickeln?
Nouba
nicht ganz unwissend :)


Verfasst am:
09. Feb 2007, 10:35
Rufname:
Wohnort: Berlin

AW: über Formular Suche ausführen und Ergebnisse anzeigen - AW: über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

Hallo,

hier ist mal nur das Kriterium der Abfrage (ungetestet).

Code:
WHERE (fax.seriennummer = Eval("Forms![FormularSuche]![kombiSeriennummer].Column(1)")
       OR 1)
AND   (faxtyp.name = Eval("Forms![FormularSuche]![kombiFaxtyp].Column(1)")
       OR 1)
AND   (standort.name = Eval("Forms![FormularSuche]![kombiOrt].Column(1)")
       OR 1)
AND   (standort.ort = Eval("Forms![FormularSuche]![kombiOrt].Column(2)")
       OR 1)
AND   (fax.faxnummer = Eval("Forms![FormularSuche]![kombiFaxnummer].Column(1)")
       OR 1)
AND   (hersteller.hersteller = Eval("Forms![FormularSuche]![kombiHersteller].Column(1)")
       OR 1)

_________________
mit freundlichen Grüssen Nouba

Wenn beim Lesen eines Beitrags der Eindruck entsteht, dass sich der Fragesteller wenig Mühe gegeben hat, so erhöht das nicht unbedingt die Motivation, eine Antwort zu verfassen.
Besth
Einsteiger


Verfasst am:
09. Feb 2007, 10:44
Rufname:

AW: über Formular Suche ausführen und Ergebnisse anzeigen - AW: über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

Nein klappt leider nicht. Da bekomme ich immer alle Ergebnisse egal was in der Suchmaske steht.
Willi Wipp
Moderator


Verfasst am:
09. Feb 2007, 11:36
Rufname:
Wohnort: Raum Wiesbaden

Re: über Formular Suche ausführen und Ergebnisse ...(III) - Re: über Formular Suche ausführen und Ergebnisse ...(III)

Nach oben
       Version: Office XP (2002)

@Nouba,

ich denke da sollte das OR 1 dazu fuehren das immer alle DS angezeigt werden.
Grund: der OR-Teil ist ueberall immer erfuellt.
(PS sehe gerade das Besth ja auch schon als Ergebnis hat)

Hi Besth,

versuch es mal so
Code:
SELECT   fax.seriennummer, faxtyp.name, standort.name, standort.ort, fax.haus,
         fax.etage, fax.zimmer, fax.faxnummer, fax.faxtyp, hersteller.id,
         hersteller.hersteller, status.beschreibung
FROM     (((fax
            INNER JOIN faxtyp
            ON fax.faxtyp = faxtyp.id)
           INNER JOIN standort
           ON fax.standort = standort.id)
          INNER JOIN status
          ON fax.status = status.id)
         INNER JOIN hersteller
         ON faxtyp.hersteller = hersteller.id
WHERE    (fax.seriennummer Like Eval("Forms![FormularSuche]![kombiSeriennummer].Column(1)")
OR        Eval("Forms![FormularSuche]![kombiSeriennummer].Column(1)") Is Null)
AND      (faxtyp.name Like Eval("Forms![FormularSuche]![kombiFaxtyp].Column(1)")
OR        Eval("Forms![FormularSuche]![kombiFaxtyp].Column(1)") Is Null)
AND      (standort.name Like Eval("Forms![FormularSuche]![kombiOrt].Column(1)")
OR        Eval("Forms![FormularSuche]![kombiOrt].Column(1)") Is Null)
AND      (standort.ort Like Eval("Forms![FormularSuche]![kombiOrt].Column(2)")
OR        Eval("Forms![FormularSuche]![kombiOrt].Column(2)") Is Null)
AND      (fax.faxnummer Like Eval("Forms![FormularSuche]![kombiFaxnummer].Column(1)")
OR        Eval("Forms![FormularSuche]![kombiFaxnummer].Column(1)") Is Null)
AND      (hersteller.hersteller Like Eval("Forms![FormularSuche]![kombiHersteller].Column(1)")
OR        Eval("Forms![FormularSuche]![kombiHersteller].Column(1)") Is Null)
ORDER BY fax.id;

PS Heute kann ich auch die Bilder sehen Wink

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Besth
Einsteiger


Verfasst am:
09. Feb 2007, 12:19
Rufname:

AW: über Formular Suche ausführen und Ergebnisse anzeigen - AW: über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

Danke danke danke ;)
Klappt wunderbar.
Ich hatte selber noch etwas rumgebastelt und mir ne eigene Funktion geschrieben die das mit dem Is Null so ähnlich verarbeiten sollte, nur leider ging das auch nicht.
Kann man in der SQL keine eigenen Funktionen aufrufen die man in VBA getippselt hat? also beispielsweise so:
Code:
SELECT *
FROM   table
WHERE  feld = meinefunktion();
Willi Wipp
Moderator


Verfasst am:
09. Feb 2007, 13:06
Rufname:
Wohnort: Raum Wiesbaden

Re: über Formular Suche ausführen und Ergebnisse ...(IV) - Re: über Formular Suche ausführen und Ergebnisse ...(IV)

Nach oben
       Version: Office XP (2002)

Hi Besth,

das geht schon, solange die Fuktion global definiert ist.
Der zurueckgegebene Wert muss dann natuerlich dem Feldinhalt entsprechen.
Aber Du kannst damit in der Regel keine komplexe WHERE-Klausel ersetzen.
Ausser Du wuerdest die betroffenen Felder z.B. uebergeben.
Dann koenntest Du z.B. True als Rueckgabewert verwenden.
Aber das wird mit Sicherheit kein Geschwindigkeitswunder werden Wink

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Besth
Einsteiger


Verfasst am:
09. Feb 2007, 13:55
Rufname:


AW: über Formular Suche ausführen und Ergebnisse anzeigen - AW: über Formular Suche ausführen und Ergebnisse anzeigen

Nach oben
       Version: Office XP (2002)

Alles klar. Danke.
Ihr habt mir wieder sehr weitergeholfen.
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Aktionsabfrage in Formular -immer nur einen Datensatz ändern 6 blauvogel 1092 08. Okt 2004, 11:43
Skogafoss Aktionsabfrage in Formular -immer nur einen Datensatz ändern
Keine neuen Beiträge Access Tabellen & Abfragen: Zeile der Dateneingabe (*) in einem Formular verschieben 2 Albertus 790 08. Okt 2004, 09:17
Albertus Zeile der Dateneingabe (*) in einem Formular verschieben
Keine neuen Beiträge Access Tabellen & Abfragen: Negativ Ergebnisse in 0 umwandeln 3 Forsi 594 28. Sep 2004, 17:26
Skogafoss Negativ Ergebnisse in 0 umwandeln
Keine neuen Beiträge Access Tabellen & Abfragen: variable Spalte in Abfrage anzeigen -abhängig vom Tagesdatum 1 Lars 1193 10. Sep 2004, 13:54
Lars variable Spalte in Abfrage anzeigen -abhängig vom Tagesdatum
Keine neuen Beiträge Access Tabellen & Abfragen: Suchfunktion mit mehreren Kriterien aus Formular 5 Danny G. 2218 09. Sep 2004, 11:08
Danny G. Suchfunktion mit mehreren Kriterien aus Formular
Keine neuen Beiträge Access Tabellen & Abfragen: Tabelle, Formular, Abfrage...und nun ? 3 Gags 790 29. Aug 2004, 22:05
lothi Tabelle, Formular, Abfrage...und nun ?
Keine neuen Beiträge Access Tabellen & Abfragen: Abfragefeld nachträglich in Formular 3 Sebbl 1705 05. Aug 2004, 15:14
mabe38 Abfragefeld nachträglich in Formular
Keine neuen Beiträge Access Tabellen & Abfragen: Formular aus Endlosformular öffnen ? 10 G-Markus 1619 20. Jul 2004, 15:38
Gast Formular aus Endlosformular öffnen ?
Keine neuen Beiträge Access Tabellen & Abfragen: Suche Formel zur Abfrage doppelte Datensätze 2 sklein2405 2827 24. Jun 2004, 09:22
Willi Wipp Suche Formel zur Abfrage doppelte Datensätze
Keine neuen Beiträge Access Tabellen & Abfragen: mehrere Abfragen in einem Formular zum Auswerten 2 bpointz 1086 27. Mai 2004, 10:39
bpointz mehrere Abfragen in einem Formular zum Auswerten
Keine neuen Beiträge Access Tabellen & Abfragen: Das ausführen einer Abfrage an eine Bedingung knüpfen?! 1 MS 574 15. Mai 2004, 09:02
Robsl Das ausführen einer Abfrage an eine Bedingung knüpfen?!
Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten. Access Tabellen & Abfragen: Mehrmalige Abfrage durch Formular 11 Wickiman 897 03. Mai 2004, 15:23
Willi Wipp Mehrmalige Abfrage durch Formular
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Excel Tipps