Zeitstrahl - bei belegtem Termine Warnung
Uwe
mit folgendem Code
schreibe ich die Zeitreihe.
Kann man im Code prüfen, ob der Bereich der gefüllt wird, schon eine Hintergrundfarbe hat?
in der Zeile 3 gebe ich die Schicht ein, dann ändert sich in Zeile4 der Zeitstahl.
Wenn aber in Zeile 4 schon eine Zelle mit Hintergrundfarbe ist, soll eine msgbox hochkommen.
Gruss
Uwe
https://www.herber.de/bbs/user/79406.xls
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range, lngN As Long, lngC As Long
If Not Intersect(Target, Range("c3:Y14")) Is Nothing Then
Range("c3:Y14").Interior.ColorIndex = xlNone
For Each rng In Range("c3:Y14")
If rng "" Then
lngC = IIf(lngC = 6, 44, 6)
lngN = replaceLetters(rng.Text)
rng.Resize(1, Application.Max(1, lngN)).Interior.ColorIndex = lngC
End If
Next
End If
End Sub
Private Function replaceLetters(Text As String) As Long
Dim objRegEx As Object
Set objRegEx = CreateObject("VBScript.RegExp")
On Error Resume Next
With objRegEx
.MultiLine = True
.Global = True
.IgnoreCase = True
.Pattern = "\D+"
replaceLetters = CLng(.Replace(Text, ""))
End With
Set objRegEx = Nothing
End Function