Hallo liebes Forum,
nach intensiver Recherche im Netz und in diversen Foren komme ich einfach nicht weiter!
Ich habe ein Formular, das nach einer Auswahl eines Datums (in einem Kombinationsfeld) zwei Listenfelder aktualisiert und mir in der Liste1 den Monat (Bspw. : 1) und in dem Listenfeld Liste2 das Jahr schreibt(Bspw.: 2013).
Nun möchte ich auf diese beiden Listenfelder in einer Abfrage zugreifen, das funktioniert aber nicht!
Folgendes steht in meinen Kriterien, in der Abfrage: [Formulare]![Formular1]![Liste1] und unter einer anderen Spalte steht [Formulare]![Formular1]![Liste2].
Warum komen keine Ergebnisse heraus? Wenn ich einen solchen Zugriff auf Kombinationsfelder mache, dann bekomme ich Ergebnisse....
Die Abfrage erzeugt in meinem Formular ein Diagramm, dieses ist /soll dynamisch sein.
Was mache ich falsch?
Kann mir jemand helfen, ich google schon 5 Tage und komme nicht weiter.
Hallo,
warum setzt du dafür ein Listenfeld ein?
Typischerweise besteht ein Listenfeld aus mehreren Zeilen und Spalten und nicht aus einem einzelnen Wert.
Wie lautet denn die Datensatzherkunft der Listenfelder und welches ist die gebundene Spalte?
Ich setzte ein Listenfeld ein, da ich mein Formular so erstellt habe, dass ich über ein Kombinationsfeld ein Datum auswähle(es steht immer der 1ste eines Moants zu Auswahl) und sich dann in drei Listenfeldern Werte anzeigen. Liste 1 zeigt den Monat, Liste 2 das Jahr und Liste 3 ein Datum das 12 Monate vor dem Auswahldatum liegt.
Mit diesen Listeneinträgen möchte ich eine Abfrage steuern, damit sich ein Diagramm dynamisch ändert, wenn ich das Auswahldatum ändere.
Ich habe mich für ein listenfeld entschieden, da ich keinen Wert in ein Textfeld reinbekomme, irgendwie bin ich zu doof dafür und VBA ist neuland für mich.
Ich habe das auch schon mit Kombinatiionsfeldern gemacht, doch es stört mich oder besser meinen Chef, dass man jedes Kombinationsfeld auswählen muss.
Die Datensatzherkunft ist eine Abfrage und sieht so aus :
SELECT (Format([Datum],"DDDDD")),Sum([Angefragte PLZ am Tag]) AS [SummeVonAngefragte PLZ am Tag] FROM [qry_Preisanfragen] GROUP BY (Int([Datum])),(Format([Datum],"DDDDD"));
Leider verstehe ich Access noch nicht so gut, vor allen nunn nicht, dass ich Spalten binden muss.
Die Listenfelder sich mit keiner Splate gebunden...
Liegt das daran?
Warum konnte ich einfach mit den kombinationsfeldern die Werte in meinen Abfrage ziehen und nicht mit den Listenfeldern?
Es wäre wirklich super, wenn mir jemand hilft ich steht auf dem Schlauch ;)
Hallo,
das mit den Listenfeldern ist m. E. ein Irrweg, um nicht zu sagen Quatsch.
Wenn ich es richtig verstehe, soll ein mit einem Kombifeld ausgewähltes (gültiges) Datum als Kriterium für eine Abfrage verwendet werden. Dabei soll nur der jeweilige Monat und das Jahr als Kriterium herhalten:
Sub Kombi1_Afterupdate()
Dim strSQL as String
strSQl="Select * from abf_Abfrage Where Year([Datum]) =" & Year(Cdate(Me!Kombi1)) & " and Month([Datum]) = " & Month( cdate(Me!Kombi1))
Me!Diagramm1.Rowsource = strSQL
End Sub
Statt Kombifeld und Tabelle mit Datum-Einträgen könnte man sich auch ein normales ungebundenes Textfeld mit dem Datums-Picker vorstellen.
Zum Listenfeld: Ein Listenfeld hat kein "Textfeld" wie das Kombifeld (das aus einem Textfeld als solches und einem daran gebundenen Listenfeld besteht, daher auch KOMBINATIONSfeld), auf das man sich in einer Abfrage beziehen könnte.... Zudem hängt der zurückgegebene Wert ( oder Werte) von Zustand der Markierung(en) im Listenfeld ab.
Das ist ja ein Super Hinweis!
Ich probiere das gleich mal umzusetzten!
Dankeeee!!!!!!
Hallo!
Ich habe den VBA Code als Ereignis für das Kombinationsfeld mit dem Auswahldatum eingetragen. Natürlich habe ich den Code entsprechend geändert:
Sub Kombinationsfeld15_Afterupdate()
Dim strSQL As String
strSQL = "Select * from qry_Preisanfrage_Datumsreihe_UNION_xx Where Year([Datum]) =" & Year(CDate(Me!Kombinationsfeld15)) & " and Month([Datum]) = " & Month(CDate(Me!Kombinationsfeld15))
Me!Diagramm162.RowSource = strSQL
End Sub
Leider sieht das Diagramm, welches ich im Formular, auf Basis der selben Abfrage erstelllt habe, nicht richtig aus. Es werden mir falsche Werte, die viel zu hoch sind (für die Y-Achse) angezeigt.
Ist mein Vorgehen richtig gewesen?
Sollte meine Abfrage zusätzlich 2 Spalten, ein mal mit dem Datum und dem Jahr für jeden Zeilen eintrag enthalten? Das habe ich nämlch nicht getan.
Sorry, ich meijnte eben NICHT Datum, sondern Monat!!!
Hallo,
das Feld (die Spalte) "Datum" sollte in der Abfrage vorhanden sein und ein gültiges Datum beinhalten....