in AJ44 werden die genommenen Urlaubstage angezeigt.
Wie kann ich erreichen, dass mir ein Hinweis "Max. Urlaubstage erreicht!" angezeigt wird, wenn der Gesamturlaubsanspruch in V4 überschritten wird?
Gruß
mike49
If Range("AJ44").Value > Range("V4").Value Then
MsgBox "Max. Urlaubstage von '" & Range("V4").Value & "' Tagen erreicht!", vbExclamation, "Hinweis"
End If
Private Sub Worksheet_Calculate()
If Range("AJ44").Value > Range("V4").Value Then
Application.Undo
MsgBox "Max. Urlaubstage von '" & Range("V4").Value & "' Tagen überschritten!", _
vbExclamation, "Hinweis"
End If
End Sub
Gruß MatthiasPrivate Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Const adRelBer$ = "B7:AF42, AS7:AS42", txRelSym$ = "U"
Cancel = Not Intersect(Target, Me.Range(adRelBer)) Is Nothing
If Cancel Then
Me.Unprotect
Target = IIf(IsEmpty(Target), txRelSym, Empty)
Target.Font.Color = IIf(Target = txRelSym, 255, 0)
Me.Protect
If Range("AJ44").Value > Range("V4").Value Then
Application.Undo
MsgBox "Max. Urlaubstage von '" & Range("V4").Value & "' Tagen überschritten!", _
vbExclamation, "Hinweis"
End If
End If
End Sub
Aber so klappt's nicht!
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Const adRelBer$ = "B7:AF42, AS7:AS42", txRelSym$ = "U"
Cancel = Not Intersect(Target, Me.Range(adRelBer)) Is Nothing
If Cancel Then
Me.Unprotect
Target = IIf(IsEmpty(Target), txRelSym, Empty)
Target.Font.Color = IIf(Target = txRelSym, 255, 0)
If Range("AJ44").Value > Range("V4").Value Then
Target = IIf(IsEmpty(Target), txRelSym, Empty)
Target.Font.Color = IIf(Target = txRelSym, 255, 0)
MsgBox "Max. Urlaubstage von '" & Range("V4").Value & "' Tagen überschritten!", _
vbExclamation, "Hinweis"
End If
Me.Protect
End If
End Sub
LG Matthias