AW: Urlaubsplaner
01.09.2017 04:55:55
Thomas
Hallo Piet,
der Code ist in dieser Arbeitsmappe drin:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim lngC As Long, varRet As Variant
On Error GoTo Errorhandler
Select Case Sh.Name
Case "Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", " _
Oktober", "November", "Dezember"
Application.EnableEvents = False
If Not Intersect(Target, Range("F10:AJ94")) Is Nothing Then
With Target(1, 1)
lngC = Application.CountIfs(Range(Cells(10, 3), Cells(94, 3)), Cells(.Row, 3), Range( _
Cells(10, .Column), Cells(94, .Column)), "u")
varRet = Application.Match(Cells(.Row, 3), Range("AT2:AT9"), 0)
If IsNumeric(varRet) Then
If lngC > Range("AT2:AT9").Cells(varRet, 1).Offset(0, 1) Then
If MsgBox("Bitte Urlaubsvorgabe prüfen!" & vbLf & vbLf & _
"ACHTUNG!!! Urlaub wird trozdem eintragen", 308) = 7 Then
Application.Undo
End If
End If
End If
End With
End If
Case Else
End Select
Errorhandler:
Application.EnableEvents = True
End Sub
Ich möchte z.B. sagen:
Es darf z.B. in der KW 3 nur 2 Mitarbeiter für Stapler B ( Zelle AW3) Urlaub eingetragen werden.
für die Gruppe Gruppe Stapler KS in der KW 3 nur 1 ( Zelle AW4)
Die Mitarbeiter in der Gruppe stehen in der Spalte C drin.
Das heißt, ich bestimme die Anzahl verschiedene Gruppen in der KW und wenn meine Kollegin von unseren Personal Urlaub eintragen möchte geht es solange gut, bis eine Meldung kommt. Dann weiß Sie das sie nicht mehr MA Urlaub geben darf