VBA: Datum überprüfen und Zelle gleich null
Schritt-für-Schritt-Anleitung
-
Öffne das Excel-Dokument und gehe in den Visual Basic for Applications (VBA) Editor, indem du ALT + F11
drückst.
-
Wähle im Projekt-Explorer dein Arbeitsbuch aus.
-
Doppelklicke auf "Diese Arbeitsmappe" (ThisWorkbook).
-
Füge den folgenden VBA-Code ein, um eine Meldung anzuzeigen, wenn das Datum erreicht ist und eine bestimmte Zelle gleich null ist:
Private Sub Workbook_Open()
If Date >= 38713 And Worksheets("Tabelle1").Range("A1") = 0 Then
MsgBox " ! ! ! ! W I C H T I G ! ! ! !" & vbCrLf & _
"Bitte die Aktualisierung nicht vergessen!" & vbCrLf & _
"Fragen wir immer an mich: Wagner-ES@arcor.de" & vbCrLf & _
"Vielen Dank!"
End If
End Sub
-
Schließe den VBA-Editor und speichere deine Arbeitsmappe als Makro-fähige Datei (.xlsm).
-
Schließe und öffne die Arbeitsmappe erneut, um die Funktion zu testen.
Häufige Fehler und Lösungen
Alternative Methoden
Anstatt den Code im Workbook_Open
-Ereignis zu verwenden, kannst du auch ein Makro erstellen, das manuell ausgeführt wird. Hier ein Beispiel:
Sub CheckDateAndCell()
If Date >= 38713 And Worksheets("Tabelle1").Range("A1") = 0 Then
MsgBox " ! ! ! ! W I C H T I G ! ! ! !" & vbCrLf & _
"Bitte die Aktualisierung nicht vergessen!" & vbCrLf & _
"Fragen wir immer an mich: Wagner-ES@arcor.de" & vbCrLf & _
"Vielen Dank!"
End If
End Sub
Du kannst dieses Makro dann über die Excel-Oberfläche ausführen.
Praktische Beispiele
Wenn du beispielsweise das Datum auf den 25.07.2006 überprüfen möchtest, kannst du den Code wie folgt anpassen:
Private Sub Workbook_Open()
Dim dDatum As Date: dDatum = "25.07.2006"
If dDatum = Date And Worksheets("Tabelle1").Range("A1") = 0 Then
MsgBox " ! ! ! ! W I C H T I G ! ! ! !" & vbCrLf & _
"Bitte die Aktualisierung nicht vergessen!" & vbCrLf & _
"Fragen wir immer an mich: Wagner-ES@arcor.de" & vbCrLf & _
"Vielen Dank!"
End If
End Sub
Tipps für Profis
- Verwende
Option Explicit
am Anfang deines Moduls, um sicherzustellen, dass alle Variablen deklariert sind.
- Teste den Code regelmäßig, um sicherzustellen, dass er wie gewünscht funktioniert.
- Dokumentiere deinen Code, um dir und anderen zu helfen, ihn in der Zukunft besser zu verstehen.
FAQ: Häufige Fragen
1. Wie kann ich den Code anpassen, um mehrere Zellen zu überprüfen?
Du kannst die Bedingungen in der If
-Anweisung erweitern, um mehrere Zellen zu überprüfen, z.B.:
If Worksheets("Tabelle1").Range("A1") = 0 And Worksheets("Tabelle1").Range("B1") = 0 Then
2. Funktioniert dieser Code auch in Excel 365?
Ja, der Code funktioniert in allen gängigen Excel-Versionen, einschließlich Excel 365. Stelle sicher, dass du die Makros aktiviert hast.