Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Uhrzeit vergleichen

Uhrzeit vergleichen
Climbi
Hallo,
in Spalte B stehen bei mir Uhrzeiten in folgendem Format.
  • 08:00:00

  • Ich möchte nun per VBA diese Uhrzeit mit einer Referenzzeit z.B. 12:00:00 vergleichen
    Mein Ansatz ist folgender:
    Dim Uhrzeit As Date

  • For Y = 2 To 65000
    Uhrzeit = Cells(Y, 2).Value
    If Uhrzeit = 12:00:00 Then
    MsgBox "Test"
    End If
    Next Y

  • Der vergleich mit 12:00:00 wird jedoch schon im Vorfeld vom Compiler angemeckert.
    Ich denke ich habe mal wieder ein Brett vor dem Kopf
    Vielen Dank im Voraus
    Gruß Climbi
    Anzeige

    2
    Beiträge zum Forumthread
    Beiträge zu diesem Forumthread

    Betreff
    Benutzer
    Anzeige
    AW: Uhrzeit vergleichen
    10.06.2012 16:56:24
    Hajo_Zi
    cdate("12:00:00 ")

    oder 12/24 oder .5 statt 12:00:00
    11.06.2012 00:42:47
    Erich
    Anzeige
    ;
    Anzeige

    Infobox / Tutorial

    Uhrzeit vergleichen in Excel mit VBA


    Schritt-für-Schritt-Anleitung

    Um eine Uhrzeit in Excel mit VBA zu vergleichen, kannst du den folgenden Schritt-für-Schritt-Ansatz verwenden. Dabei gehen wir davon aus, dass die Uhrzeiten in Spalte B stehen und du eine Referenzzeit, wie z.B. 12:00:00, vergleichen möchtest.

    1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

    2. Füge ein neues Modul hinzu: Rechtsklick auf "VBAProject (DeinWorkbook)", dann Einfügen > Modul.

    3. Kopiere den folgenden Code in das Modul:

      Sub UhrzeitVergleichen()
         Dim Uhrzeit As Date
         Dim Y As Long
         For Y = 2 To 65000
             Uhrzeit = Cells(Y, 2).Value
             If Uhrzeit = CDate("12:00:00") Then
                 MsgBox "Die Uhrzeit ist gleich 12:00:00"
             End If
         Next Y
      End Sub
    4. Schließe den VBA-Editor und führe das Makro aus, indem du ALT + F8 drückst und UhrzeitVergleichen auswählst.


    Häufige Fehler und Lösungen

    • Fehler: Compilerfehler beim Vergleich

      • Lösung: Stelle sicher, dass du CDate("12:00:00") verwendest, um die Uhrzeit korrekt zu konvertieren. Der Vergleich sollte nicht direkt mit 12:00:00 erfolgen.
    • Fehler: Keine Meldung beim Vergleich

      • Lösung: Überprüfe, ob die Uhrzeiten im richtigen Format in Spalte B stehen. Sie sollten als Uhrzeit formatiert sein.

    Alternative Methoden

    Wenn du keine VBA-Lösung verwenden möchtest, kannst du auch die folgende Formel in Excel nutzen, um eine Uhrzeit zu vergleichen:

    =IF(B2=C2, "Die Uhrzeit ist gleich", "Die Uhrzeit ist ungleich")

    Hierbei steht B2 für die Zelle mit der Uhrzeit, die du vergleichen möchtest, und C2 für die Referenzzeit (z.B. 12:00:00).


    Praktische Beispiele

    1. VBA-Beispiel: Um alle Uhrzeiten in einer bestimmten Spalte zu prüfen und eine Meldung anzuzeigen, wenn eine Uhrzeit gleich 12:00:00 ist.

      Sub UhrzeitPruefen()
         Dim Uhrzeit As Date
         For Y = 2 To 10 ' Beispiel für die ersten 10 Zeilen
             Uhrzeit = Cells(Y, 2).Value
             If Uhrzeit = CDate("12:00:00") Then
                 MsgBox "Uhrzeit in Zeile " & Y & " ist 12:00:00"
             End If
         Next Y
      End Sub
    2. Excel-Formel: Setze in Zelle D2 folgende Formel ein:

      =IF(B2=C2, "Uhrzeit stimmt überein", "Uhrzeit stimmt nicht überein")

    Tipps für Profis

    • Achte darauf, dass deine Datums- und Uhrzeitwerte korrekt formatiert sind, um Fehler zu vermeiden.
    • Nutze Debug.Print, um Werte während der Ausführung des VBA-Codes zu überprüfen.
    • Überlege, Schleifen zu optimieren, insbesondere bei großen Datenmengen, um die Performance zu verbessern.

    FAQ: Häufige Fragen

    1. Wie kann ich mehrere Uhrzeiten vergleichen?
    Du kannst eine Schleife verwenden, um durch mehrere Zellen zu iterieren und die Uhrzeiten zu vergleichen, wie im Schritt-für-Schritt-Abschnitt beschrieben.

    2. Was tun, wenn die Uhrzeiten nicht richtig erkannt werden?
    Überprüfe, ob die Zellen im richtigen Zeitformat formatiert sind. Du kannst die Formatierung über die Zellenoptionen anpassen.

    3. Funktioniert dies in allen Excel-Versionen?
    Ja, die oben beschriebenen Methoden funktionieren in allen gängigen Excel-Versionen, die VBA unterstützen.

    Beliebteste Forumthreads (12 Monate)

    Anzeige
    Anzeige
    Anzeige