Datum vergleichen per VBA

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Datum vergleichen per VBA von: Franz W.
Geschrieben am: 17.02.2005 23:34:29

Hallo Fachleute,

kapier was nicht und komm nich t auf den Fehler, hier ein paar (hoffentlich genug) Codeschnipsel:


Dim rng As Range
If rng > Date Then
MsgBox rng & " > " & Date
End if


Damit kommt z.B. 01.01.2005 > 17.02.2005


Hab's auch schon mit verschiedenen anderen Schreibweisen versucht, wie:

If CDbl(rng) > CDbl(Date) Then

ändert aber auch nix.


Wie muss ich denn das bitte schreiben?


Vielen Dank für eure Hilfe im Voraus und Grüße
Franz

Bild


Betrifft: AW: Datum vergleichen per VBA von: K.Rola
Geschrieben am: 17.02.2005 23:41:46

Hallo,

rng hat in deinem Schnipsel keinerlei Zuordnung?

Gruß K.Rola


Bild


Betrifft: AW: Datum vergleichen per VBA von: Franz W:
Geschrieben am: 17.02.2005 23:48:33

Hallo K.Rola,

hier ein bisschen genauer:

Private Sub aktGeb()
Dim n As Integer
Dim rng As Range
Dim strText As String
Dim blnFound As Boolean
strText = Chr(13) & "Geburtstage in den nächsten 14 Tagen:" & vbLf & vbLf & "Datum" & _
      vbTab & vbTab & vbTab & "Name" & vbLf & vbLf
  For Each rng In Sheets("Daten").Range("AW4:AW1500")
    If IsDate(rng) Then
      If rng > Range("AW3") Then
    MsgBox rng & "  >  " & Date
      'If DateDiff("d", Date, DateSerial(Year(Date), _
              Month(rng), Day(rng)), vbMonday) < 14 Then
                  
        blnFound = True
        strText = strText & Format(rng, "ddd,") & vbTab & Format(rng, "dd.  mmmm") & vbTab & _
              rng.Offset(0, -45) & "  " & rng.Offset(0, -46) & "               " & vbLf
      'End If
      End If
    End If
  Next
  If blnFound Then
    MsgBox strText & vbLf & vbLf, 48, "       Anstehende Geburtstage"
  End If
End Sub



Die Datümer in der Spalte "AW" haben das Format "TT.MM.JJJJ"


Grüße
Franz


Bild


Betrifft: AW: Datum vergleichen per VBA von: K.Rola
Geschrieben am: 18.02.2005 00:02:17

Hallo,

If CDate(rng) > CDate([AW3])

solte eigentlich klappen.

Gruß K.Rola


Bild


Betrifft: Ja!! von: Franz W.
Geschrieben am: 18.02.2005 00:07:25

Hallo K.Rola,

ja, das geht, vielen Dank! Und jetzt geht auch

If CDate(rng) > CDate(Date)

obwohl ich damit vorher auch probiert habe, hab mich wohl irgnedwie vertippt.....

Nochmals danke und Grüße
Franz


Bild


Betrifft: AW: Datum vergleichen per VBA von: PeterW
Geschrieben am: 17.02.2005 23:43:08

Hallo Franz,

was soll rng denn sein? So geht es ohne Probleme:
Sub Datumsvergleich()
   Dim rng As Range
   For Each rng In Range("A1:A50")
      If rng > Date Then
         MsgBox rng & " > " & Date
      End If
   Next
End Sub

Gruß
Peter


Bild


Betrifft: AW: Datum vergleichen per VBA von: Franz W.
Geschrieben am: 17.02.2005 23:49:49

Hallo Peter,

genau so hab ich's, in meiner ANtwort an K.Rola hab ich den ganzen Code gepostet.

Danke und Grüße
Franz


Bild


Betrifft: AW: Datum vergleichen per VBA von: PeterW
Geschrieben am: 17.02.2005 23:55:12

Hallo Franz,

auf welchem Blatt steht AW3?

Gruß
Peter


Bild


Betrifft: AW: Datum vergleichen per VBA von: Franz W.
Geschrieben am: 17.02.2005 23:59:11

Hallo Peter,

im selben Blatt "Daten" = aktives Blatt, das "Sheets("Daten")." kann im Grunde raus, ist von vorher übriggeblieben.


Grüße
Franz


 Bild

Beiträge aus den Excel-Beispielen zum Thema "Datum vergleichen per VBA"