Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Parameter in Abfrage variabel machen
zurück: Access Datenbank-Gerüst verwenden weiter: Formular: Preis aus verschiedenen ArtikelPreisen zuordnen Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
Sasablub
Im Profil kannst Du frei den Rang ändern


Verfasst am:
01. Dez 2009, 16:32
Rufname:

Parameter in Abfrage variabel machen - Parameter in Abfrage variabel machen

Nach oben
       Version: Office 2k (2000)

Hey,

ich erstelle mir im Moment eine Datenbank für Trainings bei uns im Segelverein. In einer Abfrage werden die Namen der Segler mit der Bootsklasse die sie Segeln verbunden. In einem Formular habe ich bereits mit einer ListBox die Abfrage in sofern im Griff, dass ich mit Hilfe einer globalen Variable mir jeweils eine Bootsklasse anzeigen lassen kann (Die Bootsklassen haben jeweils eine ID). Jedoch möchte ich jetzt, dass wenn ich ein Kontrollkästchen false setzte, wieder alle Segler mit allen Bootsklassen angezeigt werden. Wie bekomme ich es hin, dass der Parameter z.B. nur gilt wenn die Variable>0 ist?
danke für eure Hilfe Smile

Gruß
Sasa
MissPh!
Office-VBA-Programmiererin


Verfasst am:
01. Dez 2009, 17:28
Rufname:
Wohnort: NRW


AW: Parameter in Abfrage variabel machen - AW: Parameter in Abfrage variabel machen

Nach oben
       Version: Office 2k (2000)

Hallo,

ebenso wie du die Bootsklasse in der Abfrage berücksichtigst kannst du das mit dem Formular-Steuerelement tun.

Dabei könnte folgender SQL-Code herauskommen:
Code:
SELECT *
FROM   tab_Mitglieder
WHERE  tab_Mitglieder.Bootsklasse = getKlasse()
OR     Forms!deinFormular!deineCheckBox = 0

_________________
Gruß MissPh!
Gast



Verfasst am:
02. Dez 2009, 14:07
Rufname:

AW: Parameter in Abfrage variabel machen - AW: Parameter in Abfrage variabel machen

Nach oben
       Version: Office 2k (2000)

Hey,

danke für Deine Antwort.
Die herangehensweise die Du beschreibst leuchtet mir ein, aber könntest Du den Code etwas näher beschreiben? Da steig ich leider noch nicht ganz durch.

Gruß
Sasa
MissPh!
Office-VBA-Programmiererin


Verfasst am:
02. Dez 2009, 14:43
Rufname:
Wohnort: NRW

AW: Parameter in Abfrage variabel machen - AW: Parameter in Abfrage variabel machen

Nach oben
       Version: Office 2k (2000)

Zitat:
habe ich bereits mit einer ListBox die Abfrage in sofern im Griff, dass ich mit Hilfe einer globalen Variable mir jeweils eine Bootsklasse anzeigen lassen kann
Wenn du die Abfrage "im Griff" hast, so füge einfach nur ein weiteres Kriterium hinzu wie oben gezeigt.

Da du deinen Abfrage-Code nicht gezeigt hattest, musste ich mir selbst einen ausdenken - ich weiß ja nicht wie du das gelöst hast mit der globalen Variablen. Und wenn du mit dem vorgeschlagenen Ansatz nichts anfangen kannst, musst du wohl mehr Details liefern, z.B. Name des Formulars und der Kombibox *), damit man dir einen konkreten Vorschlag machen kann.

*) ich meinte natürlich Checkbox

_________________
Gruß MissPh!


Zuletzt bearbeitet von MissPh! am 02. Dez 2009, 16:23, insgesamt einmal bearbeitet
Sasablub
Im Profil kannst Du frei den Rang ändern


Verfasst am:
02. Dez 2009, 15:22
Rufname:


AW: Parameter in Abfrage variabel machen - AW: Parameter in Abfrage variabel machen

Nach oben
       Version: Office 2k (2000)

Hast recht, war wohl echt was dürftig..

Also, das ist die Abfrage: (siehe Anhang)

Hier ist im Moment nur ein Parameter für die Klasse eingetragen, später soll aber alles beeinflusst werden können.

Hier das Formular: (siehe Anhang)
Wenn der Kontrollhaken weg ist soll die Lstbox nicht mehr in die Abfrage einbezogen werden.

So, ich hoffe damit kannst mehr anfangen!
danke schonmal für deine Hilfe!



qry.jpg
 Beschreibung:
 Dateigröße:  50.2 KB
 Angeschaut:  629 mal

qry.jpg



form.jpg
 Beschreibung:
 Dateigröße:  28.37 KB
 Angeschaut:  629 mal

form.jpg


MissPh!
Office-VBA-Programmiererin


Verfasst am:
02. Dez 2009, 16:16
Rufname:
Wohnort: NRW

AW: Parameter in Abfrage variabel machen - AW: Parameter in Abfrage variabel machen

Nach oben
       Version: Office 2k (2000)

Sorry, aber mit den Bildern kann ich nicht viel anfangen.
Zeige bitte von Abfragen stets den SQL-Code und was das Formular betrifft, so fragte ich nach seinem Namen
und den vom Kontrollkästchen, aber die sehe ich nicht in der Formularansicht. Sad

Im übrigen halte ich Kombinationsfelder für geeigneter zum Filtern. Und was den Haken betrifft, so könnte
man auch einen Button einsetzen, der die Auswahl zurücksetzt, nur mal so als Anregung.

...und wo ist der Einsatz der globalen Variablen???

_________________
Gruß MissPh!


Zuletzt bearbeitet von MissPh! am 02. Dez 2009, 16:22, insgesamt einmal bearbeitet
Sasablub
Im Profil kannst Du frei den Rang ändern


Verfasst am:
03. Dez 2009, 15:40
Rufname:

AW: Parameter in Abfrage variabel machen - AW: Parameter in Abfrage variabel machen

Nach oben
       Version: Office 2k (2000)

Sasablub am 02. Dez 2009 um 15:19 hat folgendes geschrieben:
Die Namen von den Elementen hab ich doch extra drangeschrieben in dem Formular?

Hier aber der Code der Abfrage:
Code:
SELECT tbl_Segler.ID_MitgliedsNR, tbl_Segler.txt_Vorname,
       tbl_Segler.txt_Name, tbl_Segler.ID_KlassenID
FROM   tbl_Klassen
       LEFT JOIN tbl_Segler
       ON tbl_Klassen.ID_KlassenID = tbl_Segler.ID_KlassenID
WHERE  tbl_Segler.ID_KlassenID=[Forms]![frm_verwaltung]![lst_klassen];

Sooo also alles nochmal neu, hab grad erst deine Edits gesehen..

Die globale Variable hab ich wohl zwischendurch rausgenommen, hatte gar nicht mehr dran gedacht, dass die nicht mehr drin ist. Jetzt ist sie aber wieder drin.

das hier ist der SQL-Code von der Abfrage "qry_nachKlasse":
Code:
SELECT tbl_Segler.ID_MitgliedsNR, tbl_Segler.txt_Vorname,
       tbl_Segler.txt_Name, tbl_Segler.ID_KlassenID
FROM   tbl_Klassen
       LEFT JOIN tbl_Segler
       ON tbl_Klassen.ID_KlassenID = tbl_Segler.ID_KlassenID
WHERE  tbl_Segler.ID_KlassenID=fnc_wert();
bei Aktualisierung der (inwzischen) Kombobox wird folgendes Ereignis ausgelöst:
Code:
Private Sub cbo_Klassen_AfterUpdate()
    Wert = Me.cbo_Klassen
    Forms.frm_verwaltung.UF_1.Requery
End Sub
Und hier noch die Funktion über die der Wert übergeben wird:
Code:
Global Wert As Integer

Public Function fnc_Wert()
    fnc_Wert = Wert
End Function
Hilft das weiter?
MissPh!
Office-VBA-Programmiererin


Verfasst am:
03. Dez 2009, 16:11
Rufname:
Wohnort: NRW

AW: Parameter in Abfrage variabel machen - AW: Parameter in Abfrage variabel machen

Nach oben
       Version: Office 2k (2000)

Das war mein Vorschlag:
Code:
SELECT *
FROM   tab_Mitglieder
WHERE  tab_Mitglieder.Bootsklasse = getKlasse()
OR     Forms!deinFormular!deineCheckBox = 0
Und so könnte das in deiner Abfrage umgesetzt werden:
Code:
SELECT tbl_Segler.ID_MitgliedsNR, tbl_Segler.txt_Vorname,
       tbl_Segler.txt_Name, tbl_Segler.ID_KlassenID
FROM   tbl_Klassen
       LEFT JOIN tbl_Segler
       ON tbl_Klassen.ID_KlassenID = tbl_Segler.ID_KlassenID
WHERE  tbl_Segler.ID_KlassenID=[Forms]![frm_verwaltung]![lst_klassen] 
OR     [Forms]![frm_verwaltung]!tgl_klassen = 0;
War das wirklich nicht zu schaffen? ;)

PS: Die Beschriftung auf dem Formular hatte ich gestern nicht gesehen...

_________________
Gruß MissPh!
Sasablub
Im Profil kannst Du frei den Rang ändern


Verfasst am:
03. Dez 2009, 18:32
Rufname:

AW: Parameter in Abfrage variabel machen - AW: Parameter in Abfrage variabel machen

Nach oben
       Version: Office 2k (2000)

Sasablub am 03. Dez 2009 um 15:59 hat folgendes geschrieben:
Klappt super! Dankeschön!
Zitat:
War das wirklich nicht zu schaffen? ;)
im Nachinein doch schon Rolling Eyes
ich werd mir jetzt den Code nochmal genau angucken, dann steig ich da auch komplett durch Smile
vielen Dank Smile

kleine Erweiterung, die ich jetzt hinbekommen möchte:

ich möchte jetzt auch nach dem Namen filtern können, mit der gleichen Abfrage als Referenz. Ich habe grad schon mit allen möglichen AND & OR's rumprobiert, nur ich komme absolut nicht dahin, dass wenn opt_NR=true ist, alle anderen Kriterien ausgeblendet werden und nur nach der NR (txt_nr) gesucht wird..
Warscheinlich wieder ganz simpel, nur zu doof für mich Sad
MissPh!
Office-VBA-Programmiererin


Verfasst am:
03. Dez 2009, 18:49
Rufname:
Wohnort: NRW


AW: Parameter in Abfrage variabel machen - AW: Parameter in Abfrage variabel machen

Nach oben
       Version: Office 2k (2000)

Ich setze einfach mal auf der letzten Abfrage auf:
Code:
SELECT tbl_Segler.ID_MitgliedsNR, tbl_Segler.txt_Vorname,
       tbl_Segler.txt_Name, tbl_Segler.ID_KlassenID
FROM   tbl_Klassen
       LEFT JOIN tbl_Segler
       ON tbl_Klassen.ID_KlassenID = tbl_Segler.ID_KlassenID
WHERE  ([Forms]![frm_verwaltung]!opt_nr = 0
AND     (tbl_Segler.ID_KlassenID=[forms]![frm_verwaltung]![lst_klassen] 
OR       [Forms]![frm_verwaltung]!tgl_klassen = 0))
OR     ([Forms]![frm_verwaltung]!opt_nr = -1
AND     tbl_Segler.NR=[Forms]![frm_verwaltung]!txt_nr);

_________________
Gruß MissPh!
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: Daten aus Abfrage in Tabelle kopieren 7 Prummel 2569 04. März 2004, 10:36
Willi Wipp Daten aus Abfrage in Tabelle kopieren
Keine neuen Beiträge Access Tabellen & Abfragen: Kombinationsfeld im Formular als Kriterium für eine Abfrage 1 gunderma 2621 03. März 2004, 10:05
tania63 Kombinationsfeld im Formular als Kriterium für eine Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Nummerierung einer Abfrage 6 Prummel 1976 01. März 2004, 17:56
Prummel Nummerierung einer Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: bei Abfrage nur den jüngsten Datensatz anzeigen 3 Hannes 1872 25. Feb 2004, 17:02
Willi Wipp bei Abfrage nur den jüngsten Datensatz anzeigen
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage mit Auswahlkriterium über 2 Tabellen 1 Majo 1907 24. Feb 2004, 13:54
Willi Wipp Abfrage mit Auswahlkriterium über 2 Tabellen
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage Problem 4 shorty 1883 20. Feb 2004, 20:00
shorty Abfrage Problem
Keine neuen Beiträge Access Tabellen & Abfragen: [DANKE-ERLEDIGT] verschachtelte Abfrage 13 ppc 1478 17. Feb 2004, 19:46
ppc [DANKE-ERLEDIGT] verschachtelte Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Formulargesteuerte Abfrage 2 obismarck 2699 17. Feb 2004, 17:03
obismarck Formulargesteuerte Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Min() Abfrage 4 augenzeuge 1056 17. Feb 2004, 10:13
Gast Min() Abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage aus Formular erstellen 2 frkrone 3248 12. Feb 2004, 14:22
frkrone Abfrage aus Formular erstellen
Keine neuen Beiträge Access Tabellen & Abfragen: inventar abfrage 5 nooby 2254 05. Feb 2004, 14:46
nooby inventar abfrage
Keine neuen Beiträge Access Tabellen & Abfragen: Inhalt einer Abfrage überschreiben? 1 Esdo 1247 13. Jan 2004, 12:35
Bernd Schenkel Inhalt einer Abfrage überschreiben?
 

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