Office: (Office 2007) Abfragekriterium durch CBO

Helfe beim Thema Abfragekriterium durch CBO in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Erstmal vielen, vielen Dank *Smilie Aber Kommentare sind immer erwünscht, denn nur dadurch kann es besser werden und ich was lernen *wink.gif* Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Stadtbub, 18. Februar 2016.

  1. Abfragekriterium durch CBO


    Erstmal vielen, vielen Dank *Smilie

    Aber Kommentare sind immer erwünscht, denn nur dadurch kann es besser werden und ich was lernen *wink.gif*
     
    Stadtbub, 21. Februar 2016
    #16
  2. Nun...ich habe jetzt festgestellt, das es doch nicht so ist wie ich es gerne möchte. Ich habe ja auf dem Hauptformular einige Textfelder die mit DomSumme verschiedene Sachen Zusammenrechnen aus der Tabelle, welche ich bis jetzt jedes Jahr neu angelegt habe und den Namen abgeändert hab. Jetzt müssten sich diese Felder ja aus der Gesamttabelle (ich habe die Tabellen von 2014 - 2016 jetzt in einer einzigen zusammengefasst) immer das aktuelle Jahr "Herausextrahieren" und nur die Summe des aktuellen Jahres zeigen. Ich habe gegoogelt und auch die Hilfe gewälzt und bin zum Schluss gekommen, das dies definitiv zu Schwierig ist. Auch funktioniert jetzt die Stundenzusammenrechnung im Bericht nicht mehr richtig. Ich werde es so lassen wie es war, das war zwar bissl umständlicher (Jedes Jahr neue Tabellen anlegen und die ganzen Befehle abändern) aber es hat funktioniert....... trotzdem lieben Dank für eure Mühe mit mir *Smilie
     
    Stadtbub, 21. Februar 2016
    #17
  3. Hallo,
    das lässt sich mit einem Filter lösen. Kein Grund, am alten Konzept festzuhalten.
     
    MaggieMay, 21. Februar 2016
    #18
  4. Abfragekriterium durch CBO

    Wie bekomme ich das denn hin ??

    Also momentan sieht die SQL Sache in der Abfrage so aus :

    SELECT tblStunden.ID, tblStunden.Dienstdatum, tblStunden.[Art des Dienstes], tblStunden.BA, tblStunden.TU, tblStunden.G, tblStunden.E, tblStunden.JP, tblStunden.Stunden, tblStunden.Personal, tblStunden.Tunnel, tblStunden.Belastung, [Stunden]*[Personal] AS Gesamt
    FROM tblStunden
    WHERE Year(Dienstdatum) = Year(Date()) OR Year(Dienstdatum) = Year(Date())-1 OR Year(Dienstdatum) = Year(Date()) -2
    GROUP BY tblStunden.ID, tblStunden.Dienstdatum, tblStunden.[Art des Dienstes], tblStunden.BA, tblStunden.TU, tblStunden.G, tblStunden.E, tblStunden.JP, tblStunden.Stunden, tblStunden.Personal, tblStunden.Tunnel, tblStunden.Belastung, [Stunden]*[Personal];

    Ich habe das Feld Datum in Dienstdatum geändert....

    In der Tabelle stehen nun alle Datensätze seit 2014 drin.... soweit so gut.....

    Problem 1 :

    Ein ungebundenes Textfeld soll mir die Anzahl der Stunden anzeigen - immer aus dem aktuellen Jahr. Sieht momentan so aus :

    =DomSumme("[Gesamt]";"qryStunden") -Dies errechnet sich so in der Abfrage...habe ich in der Entwurfsansicht dazugefügt: [Stunden]*[Personal] dann halt Gruppieren

    Ich habe es auch schon damit probiert : =DomSumme("[Gesamt]";"qryStunden";"Year(Dienstdatum) = Year(Date))

    Aber er zeigt mir stur die zusammengezählten Stunden aus 2014 - 2016 an.......


    Problem 2

    Das Auswahlfeld hat zwar nun die Jahreszahlen 2014 - 2016 drin aaaber es kommt jetzt beim anklicken einer Jahreszahl ein Fenster in welchem steht "Datum" und eine Eingabezeile, klicke ich das weg, kommt ein zweites Fenster in welchem steht "Dienstdatum" und eine Eingabezeile..... wenn ich dies Wegklicke kommt ein leerer Bericht.....

    ich habe alle Felder wo Datum stand in Dienstdatum geändert.....


    Fragen über Fragen *frown.gif*


    Wieder ein Dropboxlink - ich bekomme die nicht so toll Komprimiert *frown.gif*

    https://www.dropbox.com/s/vcg3w19aut...30416.rar?dl=0
     
    Stadtbub, 21. Februar 2016
    #19
  5. Hallo,

    wenn du gleich die komplette Datenbank hochlädst, solltest du sie wenigstens vorher komprimieren, dann lässt sie sich (mit 7z) auch auf die zulässige Größe zippen.

    Sinnvoller wäre es jedoch, eine abgespeckte Beispiel-DB hochzuladen, die nur die notwendigsten Objekte zum Nachstellen der Problemsituation enthält.

    Unbedingt erforderlich ist es aber so oder so, die Namen der Objekte und Steuerelemente zu nennen um die es hier geht.

    Nachtrag:
    Dass du im SQL-Code ein Klammerpaar zur Date-Funktion hinzufügen musst, sollte dir eigentlich bekannt sein, schließlich machst du das in der qryStunden doch auch.
     
    MaggieMay, 21. Februar 2016
    #20
  6. Äh... welche Namen von Objekten denn ? Das habe ich doch schon getan oder nicht ?

    Hat im Übrigen auch nichts gebracht mit den Klammern...das Textfeld zeigt mir immer noch die kompletten Stunden aus allen 3 Jahren an.....

    Ich muss nochmal sagen, das ich mich hier nach dem Trial and Error Prinzip bewege.... Also alles von Hand zu Fuß eingebe und hoffe das es halbwegs klappt :/
     
    Stadtbub, 22. Februar 2016
    #21
  7. Ok, das Formular hattest du erwähnt (Hauptformular -> frmHaupt, da kann man noch drauf kommen), aber es bei den vielen berechneten Felder sehr mühsam, das zu finden wo die Jahressumme berechnet werden soll.

    Wenn du bei "Text131" das Kriterium wie oben gezeigt hinzufügst, sollte das wohl klappen. Wenn nicht, hast du etwas falsch gemacht, also zeige noch einmal deine Version des Steuerelementinhalts.

    Die Vorteile von Copy & Paste solltest du aber doch schon zu nutzen wissen.
    Sorry, es fehlt das schließende Gänsefüßchen, das sollte Access aber so auch gar nicht akzeptiert haben.
     
    MaggieMay, 22. Februar 2016
    #22
  8. Abfragekriterium durch CBO

    Hmm...

    ich habe das jetzt so in das Feld Steuerelementinhalt eingegeben :

    =DomSumme("[Gesamt]";"qryStunden";"Year(Dienstdatum) = Year(Date()))"

    Es kommt die Fehlermeldung "In den von ihnene eingegebenen Ausdruck fehlt eine schliessende runde bzw. eckige Klammer oder ein Zeichen....."

    Ich bin soweit wie vorher *frown.gif*
     
    Stadtbub, 22. Februar 2016
    #23
  9. Du schließt DomSumme nicht mit einer rechten Klammer ab, was ungültig ist - dafür spendierst Du aber dem Kriterium eine überschüssige rechte Klammer.*eek.gif*
     
  10. \@Stadtbub:
    Du musst das doch einfach nur mal von links nach rechts nach logischen Aspekten aufdröseln - so schwer kann das doch nicht sein.
    Gänsefüßchen und Klammern müssen stets paarweise auftreten.

    @Nouba:
    Die rechte Klammer ist schon da, nur leider innerhalb der Gänsefüßchen.
     
    MaggieMay, 22. Februar 2016
    #25
  11. Das Gänsefüsschen am Ende muss innerhalb der äußeren Klammer stehen:
    Code:
    maike
     
  12. Das Klappt jetzt *biggrin.gif*


    DANKESCHÖN.....

    leider hat sich nun ein weiteres Problem ergeben....

    Die Teilnehmerzahl....die kommt ja auch aus der tblStunden.....

    da sollte er mir ja auch die Teilnehmer nur aus dem aktuellen Jahr anzeigen. Momentan hab ich das so :

    =DomSumme("[Tunnel]";"tblStunden_2016")
    und
    =DomSumme("[Belastung]";"tblStunden_2016")

    Da ich ja bis dato für jedes Jahr eine neue tbl und qry angelegt habe.....
     
    Stadtbub, 23. Februar 2016
    #27
  13. Abfragekriterium durch CBO

    Und warum machst du das dann nicht einfach genauso, wie mit dem Beispiel für Gesamt - Domäne ist qryStunden und im Kriterium das aktuelle Jahr angeben *confused.gif* ?
    maike
     
  14. Stimmt..ich war grad doof *frown.gif*

    Jetzt passt das.... *biggrin.gif*



    Jetzt fehlt nur noch die Sache mit dem Bericht und der Jahressauswahl...

    folgenden Code ist nun drin im CBO :

    SELECT Year([Dienstdatum]) AS J FROM tblStunden AS s GROUP BY Year([Dienstdatum]) ORDER BY Year([Dienstdatum]) DESC;

    Das klappt auch.....es zeigt mir die Jahre 2014 - 2016 an .....soweit passt das...

    In der Query "qryStunden" ist die SQL Sache diese :

    SELECT tblStunden.ID, tblStunden.Dienstdatum, tblStunden.[Art des Dienstes], tblStunden.BA, tblStunden.TU, tblStunden.G, tblStunden.E, tblStunden.JP, tblStunden.Stunden, tblStunden.Personal, tblStunden.Tunnel, tblStunden.Belastung, [Stunden]*[Personal] AS Gesamt
    FROM tblStunden
    WHERE (((Year([Dienstdatum]))=Year(Date()) Or (Year([Dienstdatum]))=Year(Date())-1 Or (Year([Dienstdatum]))=Year(Date())-2))
    GROUP BY tblStunden.ID, tblStunden.Dienstdatum, tblStunden.[Art des Dienstes], tblStunden.BA, tblStunden.TU, tblStunden.G, tblStunden.E, tblStunden.JP, tblStunden.Stunden, tblStunden.Personal, tblStunden.Tunnel, tblStunden.Belastung, [Stunden]*[Personal];


    Im Code des Hauptforms ist das nun drinne :

    Private Sub Form_Load()

    Me.KOMBO_JAHR = Year(Date)

    End Sub

    und das :

    Private Sub KOMBO_JAHR_AfterUpdate()


    DoCmd.OpenReport "Jahresstunden_Teilnehmer", acViewPreview, , _
    BuildCriteria("Year([Dienstdatum])", dbInteger, Me.KOMBO_JAHR)


    End Sub

    Problem ist nun....ich rufe im CBO das entsprechende Jahr auf und es kommt ein Messagebox mit

    Parameterwert eingeben - Datum

    klicke ich diese weg kommt eine neue Messagebox mit

    Parameterwert eingeben - Dienstdatum

    ???

    Warum ?? Ich habe doch das Datumsfeld auf Dienstdatum geändert......
     
    Stadtbub, 23. Februar 2016
    #29
  15. Hi,

    schau dir mal den SQL-Code der Abfrage an, die als Datenquelle des Berichts eingesetzt wird.

    Und dann auch noch die Steuerelemente und deren Steuerelementinhalt im Detailbereich.

    Und schließlich gibt es da noch eine Gruppierung...
     
    MaggieMay, 23. Februar 2016
    #30
Thema:

Abfragekriterium durch CBO

Die Seite wird geladen...
  1. Abfragekriterium durch CBO - Similar Threads - Abfragekriterium CBO

  2. Excel lädt die Daten nicht sobald Abfragekriterium für ein Textfeld erstellt wird

    in Microsoft Access Hilfe
    Excel lädt die Daten nicht sobald Abfragekriterium für ein Textfeld erstellt wird: Hey Ihr Lieben, ich habe eine Abfrage erstellt und das Kriterium - Wie "*gelb*" - angegeben. Sprich: Mir werden alle Datensätze angezeigt die irgendwo das Wort "gelb" in sich haben. Nun...
  3. Felder in Abhängigkeit von cbo Sperren

    in Microsoft Access Hilfe
    Felder in Abhängigkeit von cbo Sperren: Hallo liebe Forengemeinde, wie in der Überschrift schon angedeutet, suche ich nach einer Möglichkeit, Textboxen in einem Form zu sperren, je nach dem was in einem cbo ausgewählt wurde (gleiches...
  4. Kombinationsfeld als Abfragekriterium

    in Microsoft Access Hilfe
    Kombinationsfeld als Abfragekriterium: Hallo, Ich habe ein Kombinationsfeld, Datenherkunft ist Werteliste, Ich kann also nur die erste Spalte im Kombifeld sehen. In einer Abfrage wird jetzt diese Kombinationsfeld als Filter, d. h. als...
  5. Abfragekriterium nur wenn Kombinationsfeld nicht leer ist

    in Microsoft Access Hilfe
    Abfragekriterium nur wenn Kombinationsfeld nicht leer ist: Hallo Zusammen, habe mir aus Forenbeiträgen folgenden Code herausgezogen um ein Abfragekriterium nur dann auszuführen, wenn ein Kombinationsfeld nicht leer ist: Code:...
  6. Abfragekriterium (wenn "leer" dann "alle") (SQL-Code)

    in Microsoft Access Hilfe
    Abfragekriterium (wenn "leer" dann "alle") (SQL-Code): Hallo! Ich habe eine Abfrage "qry_Alle" und ein Formular "Ferienhilfen", das die Kombinatiosfelder "cbo_Benutzerfilter" und "cbo_Statusfilter" enthält! Meine neue Abfrage greift auf "qry_Alle"...
  7. Operator "Zwischen" in Abfragekriterium

    in Microsoft Access Hilfe
    Operator "Zwischen" in Abfragekriterium: Hallo, ich habe folgendes Kriterium in der Abfrage versucht: Wenn([formulare]![frmDatenbank]![WAlter]=0;[Datenbank]![Alter];>20 Und 125366
  8. Abfragekriterium – nur einmal den gleichen Kriteriumswert anzeigen

    in Microsoft Access Hilfe
    Abfragekriterium – nur einmal den gleichen Kriteriumswert anzeigen: Hallo, es gibt wirklich immer wieder „Access-Überraschungen“ die lassen Zweifel an meinem Verstand aufkommen, weil ich nichts mehr checke... Mit einer Abfrage soll sichergestellt werden, das 3...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden