Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1576to1580
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Urlaubsplaner

Urlaubsplaner
31.08.2017 20:02:58
Thomas
Guten Abend zusammen,
ich hoffe ihr könntet mir helfen.
Wir haben einen Urlaubsplaner. In der Spalte AU, AW, AY, BA stehen nach meiner Vorgabe wieviel Mitarbeiter Urlaub haben dürfen.
Mein Code ist aber für das ganze Tabellenblatt.
Kann man den Code irgendwie auf die KWs anpassen ?
Leider weiß ich nicht wie es geht :-(
Besten Dank erst mal :-)
https://www.herber.de/bbs/user/115922.xlsm
Liebe Grüße
Thomas

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Urlaubsplaner
31.08.2017 23:11:00
Piet
Hallo Thomas
ich sehe zwar die Spalten AU, AW und sehe verschiedene Codes, wo ich im Augenblick nicht weiss was sie machen?
Aber welcher Code bezieht sich auf die KW und was genau soll er bewirken? Da blicke ich im Augenblick nicht durch ...
mfg Piet
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
Anzeige
AW: Urlaubsplaner
01.09.2017 20:19:51
Piet
Hallo Thomas
bei der Anfrage geben sich mir einige Raetsel auf. Zunaechst mal funktioniert das Programm im Monat Januar wie gewünscht. Sobald die Vorgabe im grünen Bereich AT2:BA9 überschritten wird erfolgt eine Warnmeldung. Dabei wird auch die KW mit berücksichtigt! Ich konnte dort keinen Fehler feststellen.
Der Monat Februar, Maerz laesst zu meiner Überraschung keine Eingabe mit "U,K" zu, dann kommt der Meldedialog "Falsche Eingabe". Ich sehe aber das der grüne Bereich AT:BA nicht so ausgefüllt ist wie im Januar. Kann das daran liegen? Mehr kann ich nicht tun.
mfg Piet
AW: Urlaubsplaner
02.09.2017 08:13:59
Simone
Hallo Piet,
es geht erstmal nur um den Januar.
Momentan macht er immer über das ganze Tabellenblatt und nicht über die Einzelnen KWs.
In der Spalte AU, AW, AY, BA, stehen nach einer Vorgabe wieviel Mitarbeiter/je Gruppe Urlaub haben dürfen AT2: AU9
Der Code ist aber für das ganze Tabellenblatt F10:AJ94 . 
Kann man den Code irgendwie auf die KWs anpassen ?
Das heißt: 
Im Januar in AW steht 2 drin, Bereich " Stapler KS "dann darf er in der Kalenderwoche 2 ( N10:R94 )nur 2 Mitarbeiter Urlaub vergeben werden, sonst kommt diese Meldung:
"Bitte Urlaubsvorgabe prüfen!"
              "ACHTUNG!!! Urlaub wird trozdem eintragen"
Leider weiß ich nicht wie es geht :-(
Ich müsste den Code jetzt in den einzelnen Tabellenblätter immer neu anpassen.
Anzeige
benutzer von meiner frau
02.09.2017 08:15:20
meiner
.bin aber Thomas:-)
benutzer von meiner frau
02.09.2017 08:18:28
meiner
.bin aber Thomas:-)
benutzer von meiner frau
02.09.2017 09:09:02
meiner
.bin aber Thomas:-)
AW: benutzer von meiner frau
02.09.2017 15:11:23
meiner
Hallo Thomas,
sorry das ich mich jetzt erst melde, war privat beschaeftigt, schaue jetzt erst ins Forum rein.
Ich habe ein Überraschung für dich, du glaubst ja das man den bereich bi der Eingabe eingrenzen muss. - Stimmt nicht !!!
Ein Ratgeber im -Clever Froeum- hat den Fehler gefunden, und dir ein neues Makro ins Forum gestellt.
Bitte von da runterladen, dann brauce ich es nicht verlinken. Der Fehler liegt im Vergleich von:
İf lngC -mit- Range("AT2:AT9").Cells(varRet, 1).Offset(0, 1) - hier steht immer Offset(0,1) - d.h. immer Wert aus Spalte AU
Schau bitte zuerst mal ob dir dieser Code weiterhilft, ansonsten kannst du noch mal rückfragen.
mfg Piet
Anzeige
AW: benutzer von meiner frau
02.09.2017 22:13:54
meiner
aber wie komme ich auf die andere spalte ?
Offset 2 ?
AW: benutzer von meiner frau
03.09.2017 15:34:48
meiner
Hallo Thomas
der Ofsset muss auf die jeweilige KW Zahl angepasst sein, und sich um 2,4,6,8 erhöhen.
Ich nehme an das diese Aufgabe der Offset Erhöhung bei Clever bereits gelöst wurde.
mfg Piet

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige