Office: (Office 2010) Abfrage/Steuerung

Helfe beim Thema Abfrage/Steuerung in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo ihr lieben Fachleute, Heute hätte ich mal wieder eine Frage auf die ich bisher keine Antwort finden konnte. Es geht um mine priv. Datenbank.... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Prof.Adv, 26. September 2020.

  1. Abfrage/Steuerung


    Hallo ihr lieben Fachleute,
    Heute hätte ich mal wieder eine Frage auf die ich bisher keine Antwort finden konnte.
    Es geht um mine priv. Datenbank.
    Darin habe ich u.a. eine Qry erstellt die bestimmte Daten abruft und in einem Frm darstellt.
    In diesem Frm sind im Kpofbreich einige „Button“ plaziert die bestimmte Daten filtern.
    Soweit sogut.

    Nun stellt sich die Frage wie ich ereichen kann das das mir entweder nur Daten aus 2020 oder 2021 angezeigt werden.
    Dazu sind mir 2 Lösungsmöglichkeiten eingefallen.

    1. In der Qry jedesmal vorher den gewünschten Zeitraum als Kriterium setzen. Nachteil: ich muss immer vorher in der Qry nachsehen was grad drinsteht und dann ändern.

    2. Die betreffende Qry duplizieren und dort als Kriterium den Datumsbereich definieren.
    Das Frm ebenfalls duplizieren und die Datenherkunft zur Qry entsprechend setzen.

    Nachteil: Dann hätte ich allerdings 2 Frm, die bis auf die Daten gleich aussehen.

    Wie würdet ihr vorgehen um die Daten, entweder 2020 oder 2021 darzustellen? Ich hoffe ich konnte beschreiben worum es mir geht.

    Es gibt im Frm bereits 2 Datumsfelder mit denen ich z.B. einen bestimmten Zeitraum wählen könnte/kann.
    Nachteil: Dazu muss ich aber dann vorher immer 2x ein Datum einsetzen.
    Diese Funktion benötige ich hin und wieder um z.B. nur bestimmte Monate anzuzeigen.

    Anmerk:
    Bin aufgrund meines fortgeschrittenen Alters leider nicht mehr so stark im Thema. Wenn sich wer angesprochen fühlt würde ich mich über eine Antwort sehr freuen.

    :)
     
  2. Hallo Mike,

    was spricht gegen ein Kombinationsfeld im Formularkopf, in dem Dir die möglichen Jahre angezeigt werden und Du eines davon auswählst? Dann kanst Du anschließend einen Filter auf die Formularanzeige setzen:

    Code:
     
  3. Hallo Maxel,
    Weiß nicht. Das geht doch sicher nur dann wenn in einer Tbl die Jahreszahlen liegen. Habe aber explizid keine Tbl dazu.
    Das Datum steht zwar für jeden Datensatz in einer Tbl aber als kompl. Datum, z.B. 15.06.2020
    Das Feld dazu nennt sich "Buch_Datum".
     
  4. Abfrage/Steuerung

    Ist ja auch gut so , dass das Datum als komplettes Datum dort steht, ich habe das auch mit meinem Haushaltsbuch. Dort kann ich auch die Jahreszahlen eintragen. Mit Format(Datum, "yyyy") kannst du das Jahr aus dem Datum auslesen und weiterverarbeiten.
    Wenn du in der Abfrage eine neue Spalte machst in der steht: Format([DeineTabelle].[DatumFeld],"yyyy")= Forms![DeinFormular]![JahrStueerelement] (Hab den Code jetzt nicht auf Syntaxfehler getestet)
     
  5. Hallo Mike,

    wenn das komplette Datum in deiner Tabelle ist, kannst du für eine Combobox z.B. diese SQL-Anweisung als Datensatzherkunft verwenden:
    Code:
    Die Combobox ist 2-spaltig, wobei die erste Spalte die gebundene Spalte mit einer Spaltenbreite "0 cm" ist.
    Dadurch kannst du bequem auf den Wert "0" für "Alle Jahre" im After Update Event der Combobox reagieren.

    Hier mal eine kleine Beispieldatenbank, die ich kürzlich für ein anderes Problem erstellt habe, welche aber eine Anregung bezüglich Filter mit Datumszeiträumen sein könnte.

    Gruß Ulrich
     
  6. Einen Zeitraum würde ich praktisch ausschließlich immer über seine beiden Grenzen filtern wollen. Wer das Thema Indexnutzung ansatzweise verinnerlicht hat, wird da kaum unter normalen Umständen eine Alternative suchen.
    Daher sind die zwei Textfelder gut.

    Bezüglich des "Nachteils": Wenn Auswertungen über jeweils ein ganzes Jahr überwiegen, kann man ja mit Aktualisierung des ersten Datumsfeldes gleich das zweite berechnen und hätte einen Inhalt, ohne extra eine Eingabe tätigen zu müssen. Zum Beispiel:
    Code:
    Falls man eine solche Fortschreibung um ein Jahr im Einzelfall nicht braucht, kann man den zweiten Wert ja immer noch per Hand überschreiben.

    Ergo: Statt einen Filter zusammenzustellen, was dann bei weiteren denkbaren Variationen (2 Monate, 3 Kalenderwochen, 1 Dekade usw.) vielfältig, unübersichtlich, letztlich wenig brauchbar wird, kann man seine Rechenkraft dazu benutzen, die zweite Zeitraumgrenze unmittelbar vorzubelegen.
    Vorteil: Der Filter / die Abfrage bleiben statisch in der Formulierung.

    Das Datum des ersten Textfeldes könnte man ja auch schon vorbelegen, z.B. über die Standardwert-Eigenschaft. Produktivität des Users sollte man unterstützen.
     
  7. Hmm, das ist ja alles sehr interessant.
    Habe nun eine Weile mit einem Kombifeld herumexperimentiert. Aber ohne Erfolg.

    Deine Variante, lieber Ulrich, hat mich beeindruckt, um nicht zu sagen „sehr beeindruckt“.
    Das ist das wenn ich meine „Fachleute am Werk“. Das übersteigt meine Möglichkeiten um Welten.

    Nach einigen Versuchen habe ich es aber geschafft zwei Kombis in meinem Formular unterzubringen
    womit ich die gewünschten Daten anzeigen lassen kann. Perfekt.

    Diese Lösung ist natürlich die Luxusvariante, zu meinen Ideen aus #1.

    Vielleicht noch eine Erklärung dazu: (@Eberhard)

    Die Eingabe der Daten erfolgt in einen sep. Formuar welches die Daten in eine Tabelle schreibt.
    Das nachschlagen / filtern / suchen, oder was ich auch immer mit den Daten anstellen möchte geschieht mittels des „Auswertungsformulars“, so nenne ich es mal.

    Was ich also nun praktiziere ist: Dateneingabe (alle Daten) mittels Formular. Das ist auch alles ok.

    Bisher habe ich Daten angelegt aus 2019 und 2020. Diese wurden dann per Qry im o.g. Auswertungsformular angezeigt.
    Dort will ich dann gewisse Daten anzeigen / filtern / suchen können.

    Das geht jetzt wunderbar. „Mein Tick“ ist es halt, alles schnell per Klick zu erreichen und nicht mühsam zuerst Kriterien eingeben / festlegen zu müssen.

    Übr. :: es geht in der Tat um eine Art „Haushaltsbuchführung“ bzw. Finanzbuchhaltung, wenn auch nur in sehr begrenztem Rahmen. Eben im Rahmen meiner Fähigkeiten.
    Eine sep. DB mit meinen Wandertouren habe ich auch noch.*Smilie
    Jetzt bin ich aber einen Riesenschritt weitergekommen, dank Eurer Hilfe.

    Danke vielmals.

    Nachbemerkung:
    Natürlich kann ich Daten nicht NUR nach JAHR oder MONAT selektieren sondern auch z.B. vom 01.05.2019 bis 30.09.2019 usw. und natürlich nach div. Kostenarten.

    Ehrlich, die Erläuterungen von Eberhard #6 konnte ich nicht ernsthaft auf meine Belange übertragen.
    Vielleicht etwas zu kompliziert auf den ersten Blick für mich.
     
  8. Abfrage/Steuerung

    Hallo Mike,

    in dem Beispiel FilterZeitraum wird jeweils mit Jahr und Monat gearbeitet, woraus letztendlich ein Filter generiert wird, welcher mit einem Zeitraum arbeitet. Dazu werden ein dteStart und automatisch ein dteEnd Wert generiert.

    Die Idee von Eberhard in #6 bezieht sich auch auf einen Filter mit einem Zeitraum, aber mit unabhängigen Datumswerten, welche über Textboxen eingelesen werden. Dazu könnte man schon nach Eingabe des Startwertes in der ersten Textbox die zweite automatisch mit einem vorberechneten Endwert vorbelegen. Dieser vorbelegte Endwert kann dann übernommen oder bei Bedarf angepaßt werden.

    Für diese "automatische" Vorbelegung könnten dann neben Monat, Jahr auch andere Zeiträume, z.B. eine Woche, ein Quartal usw. eingestellt werden.

    @Eberhard: übrigens eine sehr interessante Idee!

    Gruß Ulrich
     
  9. \@Ulrich
    Dein Vorschlag in #5 habe ich verstanden, logisch. Konnte es ja quasi für meine Zwecke einbauen und jetzt nutzen.

    Die Idee von Eberhard #6 ist sicher ebenso komfortabel.
    Hier müsste man ein Startdatum angeben, ein Zieldatum würde vorgeschlagen, welches man folglich auch ändern kann. Also manuelle Eingabe.
    Das ist sicher eine gute Variante. Jedoch trifft dein Vorschlag aus #5 exakt das was ich mir so vorgestellt habe.
    Nur so umsetzen hätte ich das niemals geschafft.

    Wieder etwas gelernt.
    Evtl. könnte Eberhard seinen Code mal in eine winzige DB packen dann schau ich mal wie es genau funktioniert und ob es evtl. noch besser ist als das was ich nun benutze.
    ( muss aber nicht sein, wenn es zuviel Zeit braucht)
     
  10. Ahh, das ist noch etwas.....
    Wie ich DS per Button-Code im Formular filtern kann habe ich ja soweit im Griff.
    Aber wie macht man das Gegenteil denn?
    Angenommen ich möchte die DS der Kostenart "Miete" aus der aktuellen Selektion ausschliessen?
    Per Button mit Code meine ich.
    Wie es in der Abfrage hinterlegt werden könnte weiß ich.
    Bestimmt auch ganz einfach, komme aber nicht drauf, sorry.
     
  11. Code:
    Oder war das von mir jetzt zu einfach gedacht?

    würde allerdings bedeuten, dass man bereits eine Selektion (Filtern) vorgenommen hat und die neue Bedingung "addieren" muss => Filterstring zusammensetzen.
     
  12. Wenn man nicht in der Lage oder willens ist, in seiner vorhandenen DB oder einer Kopie davon mit vorhandener funktionierender (?) Zeitraumfilterung die eine vorhandene Textbox um die gezeigte Ereignisprozedur zu erweitern und den Einzeiler einzufügen und sich das anzuschauen und wer statt dessen eine Demo-DB erwartet - für so jemanden ist mein Vorschlag nicht geeignet. Eine gewisse Restmenge an Eigeninitiative und Mitdenken erwarte ich grundlegend, dabei muss ich auch nicht von jedem verstanden und geliebt werden. Dann guckt lieber weg.
     
  13. Abfrage/Steuerung

    Eigentlich erwarte ich NULL / Garnichts lieber Eberhard.
    Du musst aber auch nicht bei jedem meiner Problemchen darstellen wie dumm ich doch bin.
    Auch habe ich kein Lust ständig und immer wiederholen zu müssen das ich aufgrund meines Alter nicht mehr so
    aufnahme / lernfähig bin und daher heilfroh bin wenn ich die Tips hier einigermaßen umsetzen kann.
    Wer nicht antworten mag, oder mich nicht mag, sollte einfach meine Beiträge oder mich als User ignorieren
    Niemand ist perfekt, ich am wenigsten. Daher bin ich froh wenn das wenige was ich von meinen DB erwarte dann auch funktioniert. Nicht immer findet man im Netz allgemein das was man sucht, bzw. ist es oft nicht zutreffend.
    Aus diesem Grund ersuche ich hier um Hilfe, manchmal.
    Den Vorschlag von Ulrich konnte ich letztendlich ohne Probleme umsetzen, also kann an nicht behaupten ich würde ein Mitdenken nicht in Erwägung ziehen.

    Sollte es hier im Forum jedoch üblich sein, herumzupoltern, werde ich anderweitig im Hilfe bitten.

    @maxel
    Danke für #11. Klappt.*Smilie
     
  14. \@Maxel
    Klappt doch nicht.
    Der Ausschluss erfolgt zwar, aber der schon bestehende aktive Filter wird aufgehoben. Das Einsetzen von => anstatt bringt eine Fehlermeldung und der Code wird gelb unterlegt.
     
  15. Also, Mike: Das => war kein Code-Bestandteil, sondern sollte "daraus folgt" bedeuten...

    => Filterstring zusammensetzen bedeutet dies im Prinzip:

    Code:
    Siehe z. B. hier (Stufe 5).
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
Thema:

Abfrage/Steuerung

Die Seite wird geladen...
  1. Abfrage/Steuerung - Similar Threads - Abfrage Steuerung

  2. Abfrage mit leeren Feldern

    in Microsoft Access Hilfe
    Abfrage mit leeren Feldern: Hallo zusammen Meine Access-Kenntnisse beschränken sich leider wirklich auf ein Minimum aber trotzdem möchte ich mich hier in diesem Bereich ein wenig weiterentwickeln :-) Ich habe eine Datenbank...
  3. Import Daten aus Access Abfrage klappt nicht

    in Microsoft Excel Hilfe
    Import Daten aus Access Abfrage klappt nicht: Moin, ich habe ein Problem. Ich habe eine Datenbank in Access mit diversen Tabellen und Abfragen. Jetzt habe ich eine neue Abfrage erstellt und muß das Ergebnis täglich in eine Exceldatei...
  4. Auslesen einer Abfrage in VBA Modul

    in Microsoft Access Hilfe
    Auslesen einer Abfrage in VBA Modul: Hallo zusammen, ich wünsche allen ein frohes und gesundes Jahr 2024. Ich habe eine alte Access 2003 und da habe ich zur Ermittlung von Planungsdaten folgende Funktion genutzt, jetzt mit Office 365...
  5. Nur aktuelles Jahr in Abfrage auslesen

    in Microsoft Access Hilfe
    Nur aktuelles Jahr in Abfrage auslesen: In meiner Abfrage habe ich eine Spalte AktJahr erstellet. Das Datum ermittle ich mit AktJahr: Datum(). Es soll nur die aktuelle Jahreszahl angezeigt werden. Mehrere Versuche mit der...
  6. SQL-Abfrage mit where

    in Microsoft Access Hilfe
    SQL-Abfrage mit where: SQL-Abfrage mit where-Parameter. PNrHaupt ist eine Zahl. Ich vermute, da liegt der Fehler, aber ich weiss nicht, wie ich das darstellen soll. Bei jeder neuer PNrHaupt soll eine neue Datei erstellt...
  7. WEB-Abfrage

    in Microsoft Excel Hilfe
    WEB-Abfrage: Wahrscheinlich seit dem letzten Update von Office funktioniert die Webzugriff aus Excel heraus nicht mehr. "Alte" Abfragen gehen noch, Änderungen an den Abfragen aber nicht, auch neue Aufrufe zu...
  8. Access gefilterten Endlosformular die ID (Autowert) in eine Abfrage zu übergeben

    in Microsoft Access Hilfe
    Access gefilterten Endlosformular die ID (Autowert) in eine Abfrage zu übergeben: Hallo Zusammen, ist es möglich, aus einem gefilterten Endlosformular die ID (Autowert) in eine Abfrage zu übergeben? Das habe ich schon ausprobiert: In der Abfrage als Kriterium eingegeben...
  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