Januar 24, 2021, 03:59:28

Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!


Datumsfilter mit Kombintionsfeld in eimem Formular

Begonnen von mconfusion, Januar 04, 2021, 20:32:07

⏪ vorheriges - nächstes ⏩

mconfusion

Ich benötige noch einmal Eure Hilfe.

In einem Formular möchte ich die Rechnungen nach Jahr anzeigen lassen.
Dafür habe ich in einem Kombinationsfeld im Formularkopf bereits die Jahreszahlen eingefügt.
So ähnlich Funktioniert der Datumsfilter mit der Rechten Maustaste.
Habt ihr einen Code für mich?
Siehe auch die Bilder.

Beste Grüße Matthias

steffen0815

Hallo,
hier hast du einen Code  ;)
Private Sub JahrSuche_AfterUpdate()
    Me.Filter = "year(preisstand)=" & Me.JahrSuche
    Me.FilterOn = True
End Sub
Gruß Steffen

PhilS

Zitat von: steffen0815 am Januar 05, 2021, 10:28:26    Me.Filter = "year(preisstand)=" & Me.JahrSuche
Das funktioniert.
Aber im Sinne meiner gerade veröffentlichten Performance Tuning Tips würde ich das so schreiben:

Me.Filter = "Preisstand >= DateSerial(" & Me.JahrSuche & ",1,1) & " AND Preisstand < DateSerial(" & Me.JahrSuche +1 & ",1,1) "
Access DevTools - Find and Replace
Komfortables Suchen und Ersetzen in den Entwurfseigenschaften von Access-Objekten. In Abfragen, Formularen, Berichten und VBA-Code - Überall und rasend schnell!

mconfusion

Vielen Dank für Eure Bemühungen.

Leider haben beide Versionen bei mit nicht Funktioniert.

steffen0815

Hallo,
dein Feldname ist (scheinbar) Preistand und nicht Preisstand.
Gruß Steffen

DF6GL

Hallo,

welchen Datentyp(!)  hat das Tabellenfeld "Preistand"?


zudem sollte es (am Beispiel der "einfachen" Filterung ), so lauten:


Me.Filter = "year(preistand)=" & nz(Me!JahrSuche,Year(Date))

um Laufzeitfehler bei leeren JahrSuche-Feld zu vermeiden. (Das gilt auch für die anderen Kriterien-Vorschläge)

mconfusion

Zitat von: steffen0815 am Januar 05, 2021, 14:06:09Hallo,
dein Feldname ist (scheinbar) Preistand und nicht Preisstand.


Du hattest Recht! Das war der Fehler. Vielen Dank!
Die Tabelle habe ich vor 15 Jahren erstellt. Das ist mir aus dem Gedächtnis gefallen.

mconfusion

Habt vielen Dank für Eure schnelle Hilfe. Es funktioniert jetzt!!!!
Liebe Grüße Matthias