Access-o-Mania

Access-Forum (Deutsch/German) => Bericht => Thema gestartet von: roll am Juli 13, 2012, 15:36:04

Titel: Bericht mit Eingabemaske nach Datum filtern
Beitrag von: roll am Juli 13, 2012, 15:36:04
Hallo,

ich möchte eine Eingabemaske, bei der ich ein Datum eingebe und damit wird mir dann aus einer Datenbank mit ID,Datum,Bericht  alle Berichte zu dem jeweiligen Datum und dem Tag danach angezeigt.

zb: Eingabe: 29.03.
Ausgabe:
29.03   berichtX
29.03.  berichtY
30.03.  berichtZ

Weiß jemand wie sich das mit Access lösen lässt?

Danke
Titel: Re: Bericht mit Eingabemaske nach Datum filtern
Beitrag von: DF6GL am Juli 13, 2012, 17:53:09
Hallo,


das wissen ein paar  ;)


Am Besten schaust Du Dir mal eine Beispieldatenbank an:

http://www.dbwiki.net/images/1/19/AccSampleSuchen.zip



Grundprinzip ist ein an die Tabelle gebundenes Formular, das alle Tabellenfelder (mit gebundenen Formular-Textfeldern) anzeigt. Das Filterkriterium wird in ein zusätzliches ungebundenes Textfeld ("txtSuchen") geschrieben und die Suche nach dem Verlassen( eigentlich "Nach Aktualisierung")  des Textfeldes angestoßen.


Die Filterung kann auf mehrere Arten erfolgen (Vorausetzung hier ist, dass das Tabellenfeld "Datum" den Datentyp "Datum/Uhrzeit" besitzt):


Filterung mit der Filter-Eigenschaft des Formulares.


Sub txtSuchen_Afterupdate()
Me.Filter = "Datum=" & Format(nz(Me!txtSuchen,Date),"\#yyyy-mm-dd\#") & _
" and " & Format(nz(Cdate(Me!txtSuchen,Date)) +1,"\#yyyy-mm-dd\#")

Me.FilterOn = true
End Sub


Filterung über die Datenherkunft des Forms:

Sub txtSuchen_Afterupdate()
Me.Recordsource = "Select * from tblTabelle where Datum between " & Format(nz(Me!txtSuchen,Date),"\#yyyy-mm-dd\#") & _
" and " & Format(nz(Cdate(Me!txtSuchen,Date)) +1,"\#yyyy-mm-dd\#")
End Sub



oder "Suchen" (ist etwas anderes als "Filtern"):

http://www.donkarl.com/?FAQ4.4