389 Aufrufe
Gefragt in Tabellenkalkulation von
Ahoi zusammen,

ich versuche gerade einen Belegungsplan für mein Team zu basteln,
haut leider nur mäßig hin. Hier die Beschreibung, vielleicht kann
mich von euch ja jmd. auf den richtigen Weg bringen.

Software ist wahlweise Excel oder GoogleDocs.

Spalte1 / Zeile 2-10
Enthält jeweils "50%-Aufgaben", das sind Aufgabe in Textform, von
denen ein Teammitglied 2 pro Tag (Spalte) erledigen kann

Spalte1 / Zeile 12-20
Enthält jeweils "100%-Aufgaben", das sind Aufgaben, von denen ein
Teammitglied nur 1 pro Tag schafft.

Ich möchte dies als Wochenplan aufsetzen, sprich 7 Spalten (Mo-So)

Jetzt möchte ich meine Teamkollegen 1-10 gerne per Dropdown den
einzelnen Aufgaben zuordnen, am liebsten mit einer Logik, die die
entsprechende Auswahl "sperrt", wenn das Mitglied schon über die
maximale Aufgabenkapazität hinaus ist (Beispiel: je eine 50% und
eine 100%-Aufgabe --> 150% --> nicht möglich bzw. nur nach
Warnung).

Dropdown habe ich, allerdings fehlt mir eine Idee, wie ich die
Zuweisung der Zeilen/Kapazitäten pro Spalte festlegen kann.

Ich freue mich über Denkanstösse :)

Beste Grüße
Thilo

1 Antwort

0 Punkte
Beantwortet von
Hallo Thilo,

Du könntest z.B. 100%-Aufgaben groß schreiben und/oder über diue bedingte Formatierung farblich hervorheben, dann wäre es schon mal visuell leichter zu unterscheiden.

Ausgehend davon, dass pro Mitarbeiter jeweils 2 Zeilen zur Verfügung stehen, könntest du auch folgendes Makro im, deinem Sheet entsprechenden, Tabellenmodul verwenden.

Private Sub Worksheet_Change(ByVal Target As Range)

Set Aufgabenbereich = Range("A1:A20")
Set Eingabebereich = Range("C2:I21") 'Zuweisung der Aufgaben zu den Mitarbeitern.

If Target.Row > 1 And Not Intersect(Target, Eingabebereich) Is Nothing Then
If Target.Row Mod 2 <> 0 Then
If Application.Match(Target.Value, Aufgabenbereich, 0) > 10 Then
If Application.Match(Target.Offset(-1, 0).Value, Aufgabenbereich, 0) > 10 Then
MsgBox "Zwei 100%-Aufgaben sind nicht möglich", vbExclamation
ElseIf Application.Match(Target.Offset(-1, 0).Value, Aufgabenbereich, 0) <= 10 Then
frage = MsgBox("Wollen Sie nach der 50%-Aufgabe wirklich noch eine 100%-Aufgabe setzen?", vbYesNoCancel + vbQuestion)
If frage <> vbYes Then
Application.EnableEvents = False
Target.ClearContents
Application.EnableEvents = True
End If
End If
ElseIf Application.Match(Target.Value, Aufgabenbereich, 0) <= 10 Then
If Application.Match(Target.Offset(-1, 0).Value, Aufgabenbereich, 0) > 10 Then
frage = MsgBox("Wollen Sie nach der 100%-Aufgabe wirklich noch eine 50%-Aufgabe setzen?", vbYesNoCancel + vbQuestion)
If frage <> vbYes Then
Application.EnableEvents = False
Target.ClearContents
Application.EnableEvents = True
End If
End If
End If
End If
End If
End Sub


Sollte das Makro nicht funktionieren, dann beschreib doch mal den Aufbau deiner Tabelle etwas näher.

Gruß Mr. K.
...