Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Datum zerlegen und filtern
zurück: Kombinationsfeld weiter: Verschiedene Felder im Endlosformular Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
jonnyb2006
VBA Dummie


Verfasst am:
17. Okt 2007, 21:12
Rufname:
Wohnort: Kassel

Datum zerlegen und filtern - Datum zerlegen und filtern

Nach oben
       Version: Office 2003

Hallo,
ich habe ein Formular wo Aufträge angelegt werden.
Zu jedem Auftrag wird auch das Anlegedatum gespeichert.
Nun suche ich eine Möglichkeit nach KW, Tag, Monat, Jahr zu filtern. Wie kann ich das anstellen? Ich denke da komme ich um VB nicht herum oder?
gruß
Bernd

P.S. Filtern nach: WW; TT; MMMM; JJJJ

_________________
gruß
Bernd


Du mußt Deinen Traum finden dann wird der Weg leicht!
derArb
getting better


Verfasst am:
17. Okt 2007, 22:08
Rufname: derArb
Wohnort: Berlin


AW: Datum zerlegen und filtern - AW: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

hallo,

vielleicht hilft das Folgende

'in ein Modul (z.B. mod_Datumsumwandlung)
Code:
Public Function fcDatSQL(vardatum As Variant) As String
 ' wandelt ein Datum vom deutschen Datumsformat
 ' in einen String im VBA-Format für SQL-Anweisungen um
    If IsDate(vardatum) Then
        fcDatSQL = Format(CDate(vardatum), "\#mm\/dd\/yyyy\#")
    End If
End Function

Public Function DateFormat(ByVal Datum As String, _
                           Optional Formatierung As String = "dd.mm.yyyy") _
                          As String
  'Deklarationen:
    Dim Tag As Long
    Dim Monat As Long
    Dim Jahr As Long
    Dim i As Long
 
  'Datum trimmen:
    Datum = Trim$(Datum)
    If Datum = "" Then Exit Function
  'Format normieren:
    Datum = Replace(Trim$(Datum), ":", ".")
    Datum = Replace(Trim$(Datum), ",", ".")
  'Tag:
    i = InStr(Datum, ".")
    If i Then
        Tag = Val(Left$(Datum, i - 1))
        Datum = Mid$(Datum, i + 1)
      Else
        Tag = Val(Left$(Datum, 2))
        Datum = Mid$(Datum, 3)
    End If
    If Tag = 0 Then Exit Function
  'Monat:
    i = InStr(Datum, ".")
    If i Then
        Monat = Val(Left$(Datum, i - 1))
        Datum = Mid$(Datum, i + 1)
      Else
        Monat = Val(Left$(Datum, 2))
        Datum = Mid$(Datum, 3)
    End If
    If Monat = 0 Then
    'Aktuellen Monat berücksichtigen:
        Monat = Month(Now)
        If Tag < Day(Now) Then Monat = Monat + 1
    End If
  'Jahr:
    Jahr = Val(Datum)
    If Jahr = 0 Then
    'Aktuelles Jahr berücksichtigen:
        Jahr = Year(Now)
        If DateSerial(Jahr, Monat, Tag) < Now Then Jahr = Jahr + 1
      ElseIf Jahr < 100 Then
    'Aktuelles Jahrhundert berücksichtigen:
        Jahr = (Year(Now) \ 100) * 100 + Jahr
    End If
    On Error Resume Next
    DateFormat = Format$(DateSerial(Jahr, Monat, Tag), Formatierung)
End Function

'######## IM FORMULAR auf buttons legen #######
'Ausgabe nach genauem Datum
    Dim datumSQL As String
    Dim strDatum As String
   
    strDatum = InputBox("Geben Sie Tag.Monat.Jahr ein (tt.mm.jjjj) ...", _
                       "Ausgabe nach Datum")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strDatum) = 0 Then Exit Function
    datumSQL = "SELECT * FROM [DeineTabelle] " & _
                "WHERE [Deindatumsfeld] = " & fcDatSQL(strDatum) & _
            " ORDER BY [DeinPrimarykeyfeld]"
    Debug.Print datumSQL
    Me.RecordSource = datumSQL
   
   
'Ausgabe zwischen 2 Zeiträumen (Datum1 und Datum2)
    Dim datumSQL As String
    Dim strDatumFrom As String
    Dim strDatumTo As String
   
    strDatumFrom = InputBox("Geben Sie Tag.Monat.Jahr ein (tt.mm.jjjj) " & _
                            "...VON DATUM", "Ausgabe nach Datum")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strDatumFrom) = 0 Then Exit Function
    strDatumTo = InputBox("Geben Sie Tag.Monat.Jahr ein (tt.mm.jjjj) " & _
                          "...BIS DATUM", "Ausgabe nach Datum")
    'Benutzereingabe wurde abgebrochen
     If StrPtr(strDatumTo) = 0 Then Exit Function
    datumSQL = "SELECT * FROM [DeineTabelle] " & _
                "WHERE [Deindatumsfeld1] >= " & fcDatSQL(strDatumFrom) & _
                  "AND [Deindatumsfeld2] <= " & fcDatSQL(strDatumTo) & _
            " ORDER BY [DeinPrimarykeyfeld]"
    Me.RecordSource = datumSQL

'Ausgabe nach Monat
    Dim MonatSQL As String
    Dim strMonat As String
   
    strMonat = InputBox("Geben Sie eine Monatszahl ein. (5 für Mai) " & _
                        "...der Monat wird herausgefiltert", _
                        "Ausgabe nach Monat")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strMonat) = 0 Then Exit Function
    MonatSQL = "SELECT * FROM [DeineTabelle] " & _
                "WHERE Month(CDate([Deindatumsfeld])) = " & strMonat & _
            " ORDER BY [DeinPrimarykeyfeld]"
    Me.RecordSource = MonatSQL
   
'Ausgabe nach Quartal
    Dim QuarterSQL As String
    Dim strDatum As String
   
    strDatum = InputBox("Geben Sie ein Datum (dd.mm.jjjj) " & _
                        "...das Quartal wird herausgefiltert", _
                        "Ausgabe nach Quartal")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strDatum) = 0 Then Exit Function
    QuarterSQL = "SELECT * FROM [DeineTabelle] " & _
                  "WHERE Format(CDate([Deindatumsfeld]), 'q') = " & _
                                 "Format(CDate('" & strDatum & "'), 'q') " & _
               "ORDER BY [DeinPrimarykeyfeld];"
    Me.RecordSource = QuarterSQL
   
'Ausgabe nach KW
    Dim KwSQL As String
    Dim strDatum As String
   
    strDatum = InputBox("Geben Sie ein Datum (dd.mm.jjjj) " & _
                        "...die KW wird herausgefiltert", "Ausgabe nach KW")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strDatum) = 0 Then Exit Function
    KwSQL = "SELECT * FROM [DeineTabelle] " & _
             "WHERE Format(CDate([Deindatumsfeld]), 'ww') = " & _
                                "Format(CDate('" & strDatum & "'), 'ww') " & _
          "ORDER BY [DeinPrimarykeyfeld];"
    Me.RecordSource = KwSQL

mfg
derArb
Nachtrag: derArb am 17. Okt 2007 um 22:51 hat folgendes geschrieben:
hallo,

vielleicht hat jemand noch eine Möglichkeit, die Suche nach Quartal und KW so
umzugestalten, dass man statt des Datums direkt das Quartal und die KW eingeben kann.

mfg
derArb

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.
KlausMz
Moderator Access


Verfasst am:
17. Okt 2007, 22:59
Rufname:
Wohnort: Irgendwo in der Pfalz

AW: Datum zerlegen und filtern - AW: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

Hallo,
das geht in Abfragen auch (fast) ohne VBA.
Für das Jahr in der Spalte "Anlegedatum" als Kriterium:
Code:
Jahr([Anlegedatum])=
Wobei nach dem = eine Fomularbezug auf ein geöffnetes Formular stehen kann:
Code:
Jahr([Anlegedatum])=Formulare!FormularName!FeldName
oder:
Code:
Jahr([Anlegedatum])=[Gewünschtes Jahr]
So wird nach dem Jahr gefragt.
Das geht analog auch mit dem Monat
Code:
Monat([Anlegedatum])=
und dem Tag:
Code:
Tag([Anlegedatum])=
Nach dem Gleichheitszeichen ist noch eine Ergänzung (wie oben beispielhaft gezeigt) erforderlich, bitte beachten.
Ob es allerdings Sinn macht nach dem Tag (ohne Monat und Jahr) und nach dem Monat (ohne Jahr) zu filtern kann ich nicht beurteilen.

Bei der Kalenderwoche ist es etwas schwieriger, weil Access für den europäischen Raum an bestimmten Jahreseneden die KW falsch rechnet. Da ist es besser eine eigene Funktion zu benutzen. Kopiere diesen Code in ein allgemeines Modul:
Code:
Function DINKW(Dat As Date) As Variant
    Dim a As Integer
   
    a = Int((Dat - DateSerial(Year(Dat), 1, 1) + _
             ((Weekday(DateSerial(Year(Dat), 1, 1)) + 1) Mod 7) - 3) / 7) + 1
    If a = 0 Then
        a = DINKW(DateSerial(Year(Dat) - 1, 12, 31))
      ElseIf a = 53 And _
             (Weekday(DateSerial(Year(Dat), 12, 31)) - 1) Mod 7 = 3 Then
        a = 1
    End If
    DINKW = Format(a, "00")
End Function
Dann legst Du eine berechnete Spalte an, in einer leeren Spalte in der 1.Zeile der Abfrage:
Code:
Kalenderwoche: DinKw(Anlegedatum)
In dieser Spalte kann man dann analog zu den anderen Vorschlägen filtern.
(siehe auch Datum in Auswahlfeld aus Kalenderwoche berechnen)

_________________
Gruß
Klaus . . . . . Feedback wäre wünschenswert.
Ich möchte bitte keine unaufgeforderten PN. Fragen bitte im Forum.
jonnyb2006
VBA Dummie


Verfasst am:
18. Okt 2007, 06:07
Rufname:
Wohnort: Kassel

Re: AW: Datum zerlegen und filtern - Re: AW: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

Hallo Arb,
danke für den Code, habe das mal versucht umzusetzen:
Code:
Option Compare Database
Option Explicit

Public Function fcDatSQL(vardatum As Variant) As String
 ' wandelt ein Datum vom deutschen Datumsformat
 ' in einen String im VBA-Format für SQL-Anweisungen um
    If IsDate(vardatum) Then
        fcDatSQL = Format(CDate(vardatum), "\#mm\/dd\/yyyy\#")
    End If
End Function

Public Function DateFormat(ByVal Datum As String, _
                           Optional Formatierung As String = "dd.mm.yyyy") _
                          As String
  'Deklarationen:
    Dim Tag As Long
    Dim Monat As Long
    Dim Jahr As Long
    Dim i As Long
 
  'Datum trimmen:
    Datum = Trim$(Datum)
    If Datum = "" Then Exit Function
  'Format normieren:
    Datum = Replace(Trim$(Datum), ":", ".")
    Datum = Replace(Trim$(Datum), ",", ".")
  'Tag:
    i = InStr(Datum, ".")
    If i Then
        Tag = Val(Left$(Datum, i - 1))
        Datum = Mid$(Datum, i + 1)
      Else
        Tag = Val(Left$(Datum, 2))
        Datum = Mid$(Datum, 3)
    End If
    If Tag = 0 Then Exit Function
  'Monat:
    i = InStr(Datum, ".")
    If i Then
        Monat = Val(Left$(Datum, i - 1))
        Datum = Mid$(Datum, i + 1)
      Else
        Monat = Val(Left$(Datum, 2))
        Datum = Mid$(Datum, 3)
    End If
    If Monat = 0 Then
    'Aktuellen Monat berücksichtigen:
        Monat = Month(Now)
        If Tag < Day(Now) Then Monat = Monat + 1
    End If
  'Jahr:
    Jahr = Val(Datum)
    If Jahr = 0 Then
    'Aktuelles Jahr berücksichtigen:
        Jahr = Year(Now)
        If DateSerial(Jahr, Monat, Tag) < Now Then Jahr = Jahr + 1
      ElseIf Jahr < 100 Then
    'Aktuelles Jahrhundert berücksichtigen:
        Jahr = (Year(Now) \ 100) * 100 + Jahr
    End If
    On Error Resume Next
    DateFormat = Format$(DateSerial(Jahr, Monat, Tag), Formatierung)
End Function


'######## IM FORMULAR auf buttons legen #######
Private Sub OrderBook_Abfr_Jahr_Click()
On Error GoTo Err_OrderBook_Abfr_Jahr_Click
'Ausgabe nach genauem Datum
    Dim datumSQL As String
    Dim strDatum As String
   
    strDatum = InputBox("Geben Sie Tag.Monat.Jahr ein (tt.mm.jjjj) ...", _
                       "Ausgabe nach Datum")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strDatum) = 0 Then Exit Sub
    datumSQL = "SELECT * FROM [Auftrag] " & _
                "WHERE [Datum] = " & fcDatSQL(strDatum) & _
            " ORDER BY [Nr]"
    Debug.Print datumSQL
    Me.RecordSource = datumSQL
Exit_OrderBook_Abfr_Jahr_Click:
    Exit Sub
Err_OrderBook_Abfr_Jahr_Click:
    MsgBox Err.Description
    Resume Exit_OrderBook_Abfr_Jahr_Click
End Sub
 
Private Sub OrderBook_Abfr_Zeitraum_Click()
On Error GoTo Err_OrderBook_Abfr_Zeitraum_Click
'Ausgabe zwischen 2 Zeiträumen (Datum1 und Datum2)
    Dim datumSQL As String
    Dim strDatumFrom As String
    Dim strDatumTo As String
   
    strDatumFrom = InputBox("Geben Sie Tag.Monat.Jahr ein (tt.mm.jjjj) " & _
                            "...VON DATUM", "Ausgabe nach Datum")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strDatumFrom) = 0 Then Exit Sub
    strDatumTo = InputBox("Geben Sie Tag.Monat.Jahr ein (tt.mm.jjjj) " & _
                          "...BIS DATUM", "Ausgabe nach Datum")
    'Benutzereingabe wurde abgebrochen
     If StrPtr(strDatumTo) = 0 Then Exit Sub
    datumSQL = "SELECT * FROM [Auftrag] " & _
                "WHERE [Datum] >= " & fcDatSQL(strDatumFrom) & _
                  "AND [Uhrzeit] <= " & fcDatSQL(strDatumTo) & _
            " ORDER BY [Nr]"
    Me.RecordSource = datumSQL
Exit_OrderBook_Abfr_Zeitraum_Click:
    Exit Sub
Err_OrderBook_Abfr_Zeitraum_Click:
    MsgBox Err.Description
    Resume Exit_OrderBook_Abfr_Zeitraum_Click
End Sub

Private Sub OrderBook_Abfr_Quartal_Click()
On Error GoTo Err_OrderBook_Abfr_Quartal_Click
'Ausgabe nach Monat
    Dim MonatSQL As String
    Dim strMonat As String
   
    strMonat = InputBox("Geben Sie eine Monatszahl ein. (5 für Mai) " & _
                        "...der Monat wird herausgefiltert", _
                        "Ausgabe nach Monat")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strMonat) = 0 Then Exit Sub
    MonatSQL = "SELECT * FROM [Auftrag] " & _
                "WHERE Month(CDate([Datum])) = " & strMonat & _
            " ORDER BY [Nr]"
    Me.RecordSource = MonatSQL

'Ausgabe nach Quartal
    Dim QuarterSQL As String
    Dim strDatum As String
   
    strDatum = InputBox("Geben Sie ein Datum (dd.mm.jjjj) " & _
                        "...das Quartal wird herausgefiltert", _
                        "Ausgabe nach Quartal")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strDatum) = 0 Then Exit Sub
    QuarterSQL = "SELECT * FROM [Auftrag] " & _
                  "WHERE Format(CDate([Datum]), 'q') = " & _
                                 "Format(CDate('" & strDatum & "'), 'q') " & _
               "ORDER BY [Nr];"
    Me.RecordSource = QuarterSQL
Exit_OrderBook_Abfr_Quartal_Click:
    Exit Sub
Err_OrderBook_Abfr_Quartal_Click:
    MsgBox Err.Description
    Resume Exit_OrderBook_Abfr_Quartal_Click
End Sub

Private Sub OrderBook_Abfr_KW_Click()
On Error GoTo Err_OrderBook_Abfr_KW_Click
'Ausgabe nach KW
    Dim KwSQL As String
    Dim strDatum As String
   
    strDatum = InputBox("Geben Sie ein Datum (dd.mm.jjjj) " & _
                        "...die KW wird herausgefiltert", "Ausgabe nach KW")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strDatum) = 0 Then Exit Sub
    KwSQL = "SELECT * FROM [Auftrag] " & _
             "WHERE Format(CDate([Datum]), 'ww') = " & _
                                "Format(CDate('" & strDatum & "'), 'ww') " & _
          "ORDER BY [Nr];"
    Me.RecordSource = KwSQL
Exit_OrderBook_Abfr_KW_Click:
    Exit Sub
Err_OrderBook_Abfr_KW_Click:
    MsgBox Err.Description
    Resume Exit_OrderBook_Abfr_KW_Click
End Sub
Wenn ich nun z.B. den button für das Quartal klicke, kommt ein Fenster wo ich das Quartal eingeben soll, danach eines für das Datum und danach eines für die Nr.....wie kommt das?

gruß
Bernd

_________________
gruß
Bernd


Du mußt Deinen Traum finden dann wird der Weg leicht!
derArb
getting better


Verfasst am:
18. Okt 2007, 06:12
Rufname: derArb
Wohnort: Berlin


AW: Datum zerlegen und filtern - AW: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

hallo Bernd,

das kommt, weil Du den Code für Monat und Quartal in einem Button hast... Wink

mfg
derArb

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.
jonnyb2006
VBA Dummie


Verfasst am:
18. Okt 2007, 06:19
Rufname:
Wohnort: Kassel

AW: Datum zerlegen und filtern - AW: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

Vieleicht liegt der Fehler bei der Datenherkunft des Formulars:
Das Formular bekommt die Daten aus einer Abfrage mit dem Namen OrderBook!

_________________
gruß
Bernd


Du mußt Deinen Traum finden dann wird der Weg leicht!
derArb
getting better


Verfasst am:
18. Okt 2007, 06:27
Rufname: derArb
Wohnort: Berlin

AW: Datum zerlegen und filtern - AW: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

hallo,

bin mir ziemlich sicher, weil getestet...allerdings ohne den error code

Button für Monatsabfrage
Code:
'Ausgabe nach Monat
    Dim MonatSQL As String
    Dim strMonat As String
   
    strMonat = InputBox("Geben Sie eine Monatszahl ein. (5 für Mai) " & _
                        "...der Monat wird herausgefiltert", _
                        "Ausgabe nach Monat")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strMonat) = 0 Then Exit Sub
    MonatSQL = "SELECT * FROM [Auftrag] " & _
                "WHERE Month(CDate([Datum])) = " & strMonat & _
            " ORDER BY [Nr]"
    Me.RecordSource = MonatSQL

Button für Quartalsabfrage
Code:
'Ausgabe nach Quartal
    Dim QuarterSQL As String
    Dim strDatum As String
   
    strDatum = InputBox("Geben Sie ein Datum (dd.mm.jjjj) " & _
                        "...das Quartal wird herausgefiltert", _
                        "Ausgabe nach Quartal")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strDatum) = 0 Then Exit Sub
    QuarterSQL = "SELECT * FROM [Auftrag] " & _
                  "WHERE Format(CDate([Datum]), 'q') = " & _
                                 "Format(CDate('" & strDatum & "'), 'q') " & _
               "ORDER BY [Nr];"
    Me.RecordSource = QuarterSQL

mfg
derArb

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.
jonnyb2006
VBA Dummie


Verfasst am:
18. Okt 2007, 06:29
Rufname:
Wohnort: Kassel

AW: Datum zerlegen und filtern - AW: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

OK, habe den Namen der Tabelle durch den Namen der Abfrage ersetzt und nun geht es Wink
Allerdings noch ein Problem, habe festgestellt das die KW nicht bei Montag beginnt, aber ich schaue mir erst mal den Code in Ruhe an.......

_________________
gruß
Bernd


Du mußt Deinen Traum finden dann wird der Weg leicht!
derArb
getting better


Verfasst am:
18. Okt 2007, 06:45
Rufname: derArb
Wohnort: Berlin

AW: Datum zerlegen und filtern - AW: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

derArb am 18. Okt 2007 um 06:40 hat folgendes geschrieben:
hallo,
meines Wissens beginnt eine KW am Sonntag..

aber wie schon oben gesagt, wäre eine Unterstützung für den Code von Quartal und KW evtl. notwendig

evtl. hilft der code von KlausMZ

auf jeden Fall musst Du den code trennen, wie ich geschrieben hab

mfg
derArb

hallo,

ungetestet
Code:
Private Sub OrderBook_Abfr_Monat_Click()
On Error GoTo Err_OrderBook_Abfr_Monat_Click
'Ausgabe nach Monat
    Dim MonatSQL As String
    Dim strMonat As String
   
    strMonat = InputBox("Geben Sie eine Monatszahl ein. (5 für Mai) " & _
                        "...der Monat wird herausgefiltert", _
                        "Ausgabe nach Monat")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strMonat) = 0 Then Exit Sub
    MonatSQL = "SELECT * FROM [Auftrag] " & _
                "WHERE Month(CDate([Datum])) = " & strMonat & _
            " ORDER BY [Nr]"
    Me.RecordSource = MonatSQL
Exit_OrderBook_Abfr_Monat_Click:
    Exit Sub
Err_OrderBook_Abfr_Monat_Click:
    MsgBox Err.Description
    Resume Exit_OrderBook_Abfr_Monat_Click
End Sub

Private Sub OrderBook_Abfr_Quartal_Click()
On Error GoTo Err_OrderBook_Abfr_Quartal_Click
'Ausgabe nach Quartal
    Dim QuarterSQL As String
    Dim strDatum As String
   
    strDatum = InputBox("Geben Sie ein Datum (dd.mm.jjjj) " & _
                        "...das Quartal wird herausgefiltert", _
                        "Ausgabe nach Quartal")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strDatum) = 0 Then Exit Sub
    QuarterSQL = "SELECT * FROM [Auftrag] " & _
                  "WHERE Format(CDate([Datum]), 'q') = " & _
                                 "Format(CDate('" & strDatum & "'), 'q') " & _
               "ORDER BY [Nr];"
    Me.RecordSource = QuarterSQL
Exit_OrderBook_Abfr_Quartal_Click:
    Exit Sub
Err_OrderBook_Abfr_Quartal_Click:
    MsgBox Err.Description
    Resume Exit_OrderBook_Abfr_Quartal_Click
End Sub

mfg
derArb

_________________
MfG
derArb

Scio me nihil scire...Εν οίδα οτι ουδέν οίδα... Ich weiss, dass ich nichts weiss (Sokrates)
Ich bevorzuge Beiträge mit korrekter deutscher Grammatik.
jonnyb2006
VBA Dummie


Verfasst am:
19. Okt 2007, 07:36
Rufname:
Wohnort: Kassel

Re: AW: Datum zerlegen und filtern - Re: AW: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

derArb am 18. Okt 2007 um 06:40 hat folgendes geschrieben:
hallo,
meines Wissens beginnt eine KW am Sonntag..
Also in Deutschland definitiv am Montag, ich weis nicht genau wie es in anderen Ländern ist. Wie muss der Code geändert werden das die KW am Montag beginnt?
gruß
Bernd

_________________
gruß
Bernd


Du mußt Deinen Traum finden dann wird der Weg leicht!
KlausMz
Moderator Access


Verfasst am:
19. Okt 2007, 08:08
Rufname:
Wohnort: Irgendwo in der Pfalz

AW: Datum zerlegen und filtern - AW: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

Hallo Bernd,
lies mal den letzten Absatz meiner 1.Antwort.

_________________
Gruß
Klaus . . . . . Feedback wäre wünschenswert.
Ich möchte bitte keine unaufgeforderten PN. Fragen bitte im Forum.
jonnyb2006
VBA Dummie


Verfasst am:
19. Okt 2007, 13:18
Rufname:
Wohnort: Kassel

AW: Datum zerlegen und filtern - AW: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

@KlausMz: Danke funktioniert soweit!

@DerArb: Kleines Problem bei Abfrage des Monats! Wenn ich z.B. 10 eingebe, kommt Oktober 2006 und Oktober 2007, kann man die Abfrage so gestalten das man die Eingabe im Format wwyy machen muß? ...oder er fragt nach Monat nochmal das jahr ab....
gruß
Bernd

_________________
gruß
Bernd


Du mußt Deinen Traum finden dann wird der Weg leicht!
Willi Wipp
Moderator


Verfasst am:
19. Okt 2007, 14:20
Rufname:
Wohnort: Raum Wiesbaden


Re: Datum zerlegen und filtern - Re: Datum zerlegen und filtern

Nach oben
       Version: Office 2003

Hi jonnyb2006,

mit Ansatz von derARb etwa so
Code:
Private Sub OrderBook_Abfr_MonatJahr_Click()
On Error GoTo Err_OrderBook_Abfr_Monat_Click
'Ausgabe nach Monat
    Dim MonatJahrSQL As String
    Dim strMonatJahr As String
   
    strMonatJahr = InputBox("Geben Sie eine Monatszahl und ein Jahr ein. " & _
                            "(052007 für Mai 2007) ...der Monat wird " & _
                            "herausgefiltert", "Ausgabe nach Monat")
    'Benutzereingabe wurde abgebrochen
    If StrPtr(strMonatJahr) = 0 Then Exit Sub
    MonatJahrSQL = "SELECT * FROM [Auftrag] " & _
                    "WHERE Format$([Datum], 'mmyyyy') = " & strMonatJahr & _
                " ORDER BY [Nr]"
    Me.RecordSource = MonatJahrSQL
Exit_OrderBook_Abfr_Monat_Click:
    Exit Sub
Err_OrderBook_Abfr_Monat_Click:
    MsgBox Err.Description
    Resume Exit_OrderBook_Abfr_Monat_Click
End Sub

_________________
Eine kurze Rueckmeldung waere nett
SL Willi Wipp

(Anleitung fuer das Anhaengen von Dateien: Klicke links auf [www], Gaeste muessen sich dafuer anmelden)
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Alter auf Basis akt. Datum ausrechnen 2 jomei 1634 22. Dez 2004, 09:15
jomei Alter auf Basis akt. Datum ausrechnen
Keine neuen Beiträge Access Tabellen & Abfragen: Access Abfrage mit größer als Parameter Datum 2 Terrific 14868 06. Dez 2004, 19:46
Gast Access Abfrage mit  größer als Parameter Datum
Keine neuen Beiträge Access Tabellen & Abfragen: Datum konvertieren 2 pad8626 1236 03. Dez 2004, 16:25
pad8626 Datum konvertieren
Keine neuen Beiträge Access Tabellen & Abfragen: Datum 5 Jogler 1001 29. Nov 2004, 13:27
borstel Datum
Keine neuen Beiträge Access Tabellen & Abfragen: Accessdaten Datum in Englischer Form in Serienbrief von Word 1 Hajo 1127 24. Nov 2004, 11:49
Gast Accessdaten Datum in Englischer Form in Serienbrief von Word
Keine neuen Beiträge Access Tabellen & Abfragen: Filtern aus Kombi & Listenfeld 1 Gast 817 16. Nov 2004, 22:07
lothi Filtern aus Kombi & Listenfeld
Keine neuen Beiträge Access Tabellen & Abfragen: Achtstelligen Zahlen-Stringwert als Datum formatieren 2 cmaier 1302 15. Nov 2004, 15:10
cmaier Achtstelligen Zahlen-Stringwert als Datum formatieren
Keine neuen Beiträge Access Tabellen & Abfragen: Abgleich über Datum 1 Darthstar 671 12. Nov 2004, 07:15
stpimi Abgleich über Datum
Keine neuen Beiträge Access Tabellen & Abfragen: 3. ältestes Datum 3 shaaree 793 27. Sep 2004, 11:03
Skogafoss 3. ältestes Datum
Keine neuen Beiträge Access Tabellen & Abfragen: Datum in Zahl umwandeln 2 Lorenz 1017 01. Sep 2004, 18:45
Lorenz Datum in Zahl umwandeln
Keine neuen Beiträge Access Tabellen & Abfragen: Datum überprüfen 4 Gast 1076 30. Aug 2004, 13:11
borstel Datum überprüfen
Keine neuen Beiträge Access Tabellen & Abfragen: Datum berechnen 1 kdl 1146 09. Aug 2004, 06:10
TommyK Datum berechnen
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: MS Frontpage