Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1508to1512
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

Mitarbeiter Anwesenheitsplan

Mitarbeiter Anwesenheitsplan
15.08.2016 09:13:32
Patrick
Hallo Forum,
ich habe mir selbst eine Aufgabe geschaffen, die ich nicht zu meiner Zufriedenheit lösen kann. Eigentlich will ich ohne VBA einen Mitarbeiter-Anwesenheitsplan erstellen und daraus eine Übersicht extrahieren.
Die Datei habe ich hochgeladen. Hier die Beschreibung:
Im ersten Block (Spalten A bis L) trägt jeder Mitarbeiter zum entsprechenden Tag ein Kürzel ein (U für Urlaub, G für Gleittag, usw.). Der Plan soll in Zukunft rollierend 24 Monate in die Zukunft reichen. Über Autofilter und Teilsumme oder Aggregat (oder von mir aus auch Pivot-Tabelle) kann ich mir die Gesamt-Übersicht übers Jahr erstellen, auch wenn ich es hier noch mit Zählenwenn gemacht habe (ich habe im Beispiel auch nur das laufende Jahr abgebildet).
Jetzt würde ich aber gerne im zweiten umrandeten Block (N4:Z15) die genommenen Urlaubstage pro Monat anzeigen lassen. Klar könnte ich hier auch wieder Zählenwenn benutzen und den Bereich Monat für Monat einzeln angeben. Aber eigentlich würde ich gerne die Daten (gelb hinterlegt) ändern und damit dynamisch die Tabelle füllen lassen.
Dazu fehlt mir einfach die zündende Idee.
Habt ihr eine? Dann gerne raus damit.
https://www.herber.de/bbs/user/107623.xlsx
Danke.

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mitarbeiter Anwesenheitsplan
15.08.2016 09:58:39
fcs
Hallo Patrick,
es wird einfacher, wenn du die Übersicht der Urlaubstage in einem separaten Blatt anlegst.
Mit der Funktion SUMMENPRODUKT in Verbindung mit BEREICH.VERSCHIEBEN kannst du eine entsprechende Auswertung machen.
Die Formel in B3 meines Beispiels kannst du in die anderen Zellen kopieren.
Gruß
Franz
Urlaub

 ABC
1   
2 01.201602.2016
3Mitarbeiter 110
4Mitarbeiter 222
5Mitarbeiter 330
6Mitarbeiter 400
7Mitarbeiter 510
8Mitarbeiter 600
9Mitarbeiter 700
10Mitarbeiter 800
11Mitarbeiter 950
12Mitarbeiter 1030
13Mitarbeiter 1100

Formeln der Tabelle
ZelleFormel
B3=SUMMENPRODUKT((MONAT(B$2)=MONAT(Anwesenheitsliste!$A$4:$A$369))*(JAHR(B$2)=JAHR(Anwesenheitsliste!$A$4:$A$369))*(BEREICH.VERSCHIEBEN(Anwesenheitsliste!$A$4:$A$369;0;VERGLEICH($A3;Anwesenheitsliste!$1:$1;0)-1)="U")*1)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Anzeige
AW: Mitarbeiter Anwesenheitsplan
15.08.2016 11:57:35
Patrick
Hallo Franz,
ich habe deinen Post heute morgen aufmerksam gelesen und bis jetzt gebraucht es zu verstehen :-)
Funktioniert sehr gut!
Ich habe es so auch erfolgreich implementiert.
Noch eine weiterführende Frage:
Wenn ich jetzt als Entscheidungskriterium nicht nur Urlaub (U) sondern noch Gleittage (G) mit einbauen will, käme mir spontan in den Sinn, deine Formel pro Prüfung aufzusummieren...
Das sieht mir aber nicht sehr schön aus und ist wahrscheinlich auch die umständlichere Variante.
Fällt dir dazu noch eine Lösung ein?
Gruß
Patrick
AW: Mitarbeiter Anwesenheitsplan
15.08.2016 23:01:43
fcs
Hallo Patrick,
man muss nicht für "G" die komplette Formel wiederholen, man kann eine ODER-Bedingung für "U" und "G" einbauen. Das ODER wird hierbei durch das "+" repräsentiert.
Tabelle1

 AB
2 01.2016
3Mitarbeiter 11

Formeln der Tabelle
ZelleFormel
B3=SUMMENPRODUKT((MONAT(B$2)=MONAT(Anwesenheitsliste!$A$4:$A$369))*(JAHR(B$2)=JAHR(Anwesenheitsliste!$A$4:$A$369))*((BEREICH.VERSCHIEBEN(Anwesenheitsliste!$A$4:$A$369;0;VERGLEICH($A3;Anwesenheitsliste!$1:$1;0)-1)="U")+(BEREICH.VERSCHIEBEN(Anwesenheitsliste!$A$4:$A$369;0;VERGLEICH($A3;Anwesenheitsliste!$1:$1;0)-1)="G"))*1)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Bei Verwendung von Namen für die relevanten Zellbereche wird die Formel etwas übersichtlicher:
Tabelle1

 AB
2 01.2016
3Mitarbeiter 11

Formeln der Tabelle
ZelleFormel
B3=SUMMENPRODUKT((MONAT(B$2)=MONAT(Bereich_Datum))*(JAHR(B$2)=JAHR(Bereich_Datum))*((BEREICH.VERSCHIEBEN(Bereich_Datum;0;VERGLEICH($A3;Mitarbeiter;0)-1)="U")+(BEREICH.VERSCHIEBEN(Bereich_Datum;0;VERGLEICH($A3;Mitarbeiter;0)-1)="G"))*1)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Außerdem kann man so die Formel einfach an Weitere Zeilen mit Datum anpassen. Man muss "nur" den Zell-Bereich des Namens im Namens-Manager anpassen.
Gruß
Franz
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige