So funktioniert JustAnswer:
  • Fragen Sie einen Experten
    Tausende Experten in über 200 Kategorien.
  • Erhalten Sie eine professionelle Antwort
    Per E-Mail oder sofortiger Benachrichtigung, während Sie auf unserer Website warten.
    Stellen Sie ggf. weitere Anschlussfragen.
  • 100%ige Zufriedenheit garantiert
    Bewerten Sie die erhaltene Antwort.
Stellen Sie Ihre Frage an IT-Fachinformat...
IT-Fachinformatiker
IT-Fachinformatiker, Systemadministrator
Kategorie: Computer
Zufriedene Kunden: 6970
Erfahrung:  Software Entwicklung, Projekt Erfahrung, Windows-Netzwerke, Linux-Netzwerke, Windows/Linux-Server
32504664
Geben Sie Ihre Frage in der Kategorie Computer hier ein
IT-Fachinformatiker ist jetzt online.

Ich will die Kriterien einer Auswahlabfrage durch ein vorgeschaltetes

Kundenfrage

Ich will die Kriterien einer Auswahlabfrage durch ein vorgeschaltetes Formular eingeben lassen. Das Formular enthält dazu Listenfelder mit Mehrfachauswahl. Es gelingt mir nicht, in der Kriterienzeile der Abfrage, die ausgewählten Elemente anzusprechen.
=[Formulare]![RSM Report Formular]![Liste1]
bis dahin komme ich, jetzt habe ich 2 Spalten (0=ID, 1= Name), und diese 2., angezeigte will ich haben. Natürlich nur diejenigen mit der Eigenschaft selected. Wie ist die Syntax? Geht das hier überhaupt?
Gepostet: vor 6 Jahren.
Kategorie: Computer
Experte:  IT-Fachinformatiker hat geantwortet vor 6 Jahren.
Hallo,

mit welcher Datenbank bzw. Programmiersprache arbeiten Sie denn genau und so wie ich das verstehe wollen Sie für eine Spalte ein Kreterium und für die nächste ebenfalls eins richtig?

LG Günter
Kunde: hat geantwortet vor 6 Jahren.
acesss 2010
Kriteriumzeile im Bericht
Die 2 Spalten hat die Liste1 im Formular. Der Bericht soll die Daten zu den in diesem Formaular ausgewählten Namen anzeigen
Experte:  IT-Fachinformatiker hat geantwortet vor 6 Jahren.
Ok, arbeite selbst auch mit Access 2010. Warum erstellen Sie keine simple SQL-Anweiung und teilem dem Bericht mit, das "er" sich das genau aus dieser Abfrage holen soll? Beispiel:

SELECT * FROM Tab1 WHERE id = 1 AND Name = "Müller" OR Name = "Meier"

Das was Sie versuchen:

=[Formulare]![RSM Report Formular]![Liste1]

kann als Datenquelle nirgens funktionieren da Access überhaupt nicht genau weiss, was Sie "da" möchten. Sie können aber als Datenquelle anstatt einer Abfrage einfach eine SQL-Anweisung setzen oder aber Sie machen es im Formular d.h. es würden dort alle Datensätze durchlaufen und dann die SQL-Abfrage dynamisch erstellt das Formular muss allerdings dazu sichtbar und damit aktiv sein. Ich müsste ein klein wenig mehr erfahren :-)

LG Günter
Kunde: hat geantwortet vor 6 Jahren.
also, das ist die Bestätigung meiner Vermutung, daß es keine Syntax gibt, um die Dateninhalte der Liste1 in der Kriterienzeile auszulesen.
Ich werde stattdessen einen Button in das Formular einbauen, der mit die SQL-Abfrage erstellt. Diese Lösungsmöglichkeit habe ich auch schon gesehen. Ist nur sehr aufwendig, weil mehrere Listen (5 Stück) ausgewertet werden müssen.
ich denke, die Lösung bei
http://allenbrowne.com/ser-50.html

ist richtig.
Experte:  IT-Fachinformatiker hat geantwortet vor 6 Jahren.
Ja, aber schauen Sie so schwer ist es doch nicht:alles was dazu nötig ist, um dynamisch eine Abfrage per VBA zu erstellen ist dieser Ausgangspunkt:

Dim db As Database
Dim qd As QueryDef
Dim rs As DAO.Recordset
Dim sql As String


For Each qd In db.QueryDefs
If qd.name = "qdf_abc" Then
qd.sql = "SELECT * FROM tab1 WHERE ....]"
End If
Next


'** Zeigt, wie Sie dann darauf Zugriff nehmen können
'** Set rs = db.OpenRecordset("qdf_abc", dbOpenSnapshot)

'** Beispiel rs![spalte1]

Set rs = Nothing
Set db = Nothing


Damit könnten Sie also problemlos SQL-Abfragen erstellen d.h. die Abfrage qdf_abc muss natürlich bereits existieren sie wird jedesmal überschrieben in der obigen Schleife d.h. das müssten Sie dann ggf. anpassen. Das mit Ihren Listen naja, das könnte man evtl. so auch lösen oder eben wie in Ihrem Beispiel leider gibt es da keine enorm einfache Möglichkeit ein wenig Arbeit ist es natürlich schon.

LG Günter


Kunde: hat geantwortet vor 6 Jahren.
Ja, aber man könnte doch die Abfrage beibehalten, und nur die Where-Bedingung hinzufügen?
Experte:  IT-Fachinformatiker hat geantwortet vor 6 Jahren.
Ja klar natürlich aber es muss eine echte SQL Abfrage und keine Formel sein ;-) dann können Sie einfach eine WHERE Klausel hinten dran hängen natürlich das geht.
LG Günter
Experte:  IT-Fachinformatiker hat geantwortet vor 6 Jahren.
Würde Ihenn gern weiter helfen, wenn Sie das wünschen. LG Günter
IT-Fachinformatiker und weitere Experten für Computer sind bereit, Ihnen zu helfen.
Kunde: hat geantwortet vor 6 Jahren.
nein, es war schon okay, aber ich habe eine andere Lösung woanders gefunden
Experte:  IT-Fachinformatiker hat geantwortet vor 6 Jahren.
Hallo, in Ordnung nur mal eine Frage: Warum haben Sie denn dann akzeptiert oder habe ich Sie in die richtige "Richtung gestoßen"? LG Günter

Ähnliche Fragen in der Kategorie Computer