Hallo
Ich habe ein kleines Macro vor Jahren unter Office 2010 geschrieben, dass mir die Zeile in der ein Datum steht das in Tag und Monat (Geburtstag) mit dem heutigen Datum überein stimmt farbig hervorhebt. zudem wird eine MsgBox geöffnet in dem der Vor- und Nachname der betreffenden Person steht. der Name wird aus 2 spalten der Zeile ausgelesen und zusammengefügt.
Das Ganze hat Jahre funktioniert, letzte Woche habe ich einen neuen PC gekauft mit Office 2019 und seither bekomme ich eine Laufzeit Fehler - Type unverträglich -
Kann mir bitte jemand helfen
Das ist der Code in der Arbeitsmappe
Private Sub Workbook_Open()
Dim daDatum As Date ' Variable für das Datum
Dim loZeile As Long ' Variable für die Zeile
Dim strNamen As String ' Variable für die Namen
' Dim Zeile As Long
' Schleife so lange durchlaufen bis eine Zeile Leer ist
loZeile = ThisWorkbook.Worksheets("Tabelle1").UsedRange.Rows.Count
For loZeile = 10 To loZeile
'Datum aus Spalte R in die Variable schreiben
daDatum = Cells(loZeile, 18)
With Range(Cells(loZeile, 2), Cells(loZeile, 18))
If CDate(Day(daDatum) & "." & Month(daDatum) & "." & Year(Date)) = Date Then
' bei Übereinstimmung mit dem aktuellen Datum farbig füllen
.Interior.ColorIndex = 22
' Vor- und Nachname auf die Variable schreiben
strNamen = strNamen & Cells(loZeile, 7) & " " & Cells(loZeile, 6) & vbLf
End If
End With
' Zeilenvariable um 1 erhöhen
loZeile = loZeile + 1
Next loZeile
If strNamen <> "" Then
' es wurden Übereinstimmungen gefunden
MsgBox strNamen, vbInformation, "Heute haben Geburtstag:"
End If
End Sub
Das der Code im Module
Private Sub Worksheet_Change(ByVal Target As Range)
' mehr als eine Zelle wurde geändert
If Target.Count > 1 Then Exit Sub
' Änderung erfolgt in Spalte R
If Target.Column = 18 Then
If CDate(Day(Target) & "." & Month(Target) & "." & Year(Date)) = Date Then
' bei Übereinstimmung mit dem aktuellen Datumfarbig füllen
Range(Target, Target.Offset(0, -2)).Interior.ColorIndex = 4
End If
' End If
End If
End Sub
Ich muss noch dazu sagen das die Zeile eingefärbt wird und die MsgBox öffnet aber die Fehlermeldung kommt dennoch
Besten Dank im Voraus
Peter
|