Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Indexausgabefehler bei Mehrfacheinträgen
#1
Guten Morgen,

ich plane gerade ein Dienstplanungssheet zu erstellen. Soweit so gut klappt das auch. Nun habe ich aber ein Fehler festgestellt, an dem ich jetzt nicht weiter komme.

Die Tabelle ist wie folgt aufgebaut. Jeder Standort hat ein Dienstplan als Tabellenblatt. Mitarbeiter können durchaus an mehreren Standorten arbeiten. Um Doppelbesetzungen zu vermeiden, gibt es auch eine Mitarbeiterübersicht, die anzeigt wo ein Mitarbeiter arbeitet und ob er gegebenenfalls mehrfach eingeteilt ist. Dafür habe ich eine Hilfstabelle erstellt, in der ich aus allen Standorten die Dienstpläne untereinander aufliste. 

Das Schema sieht wiefolgt aus: Erste Spalte jeweils die Mitarbeiternamen herauskopiert, erste Zeile das Datum. Ab B2 entsprechend die Schichten usw. 


Code:
=WENN(SUMMENPRODUKT((Hilfstabelle!$A$2:$A$16=$A2)*(Hilfstabelle!$B$1:$AF$1=B$1)*(Hilfstabelle!$B$2:$AF$16<>""))>1;"Fehler";INDEX(Hilfstabelle!$B$2:$AF$16;VERGLEICH($A2;Hilfstabelle!$A$2:$A$16;0);VERGLEICH(B$1;Hilfstabelle!$B$1:$AF$1;0)))


So sieht mein Code aus. Zuverlässig zeigt er Doppelbesetzungen an. Problematisch ist aber, dass wenn Beispielsweise Mitarbeiter 1 in Standort 1 und 2 arbeitet, er nur die Daten vom Standort1 rauszieht.

Was er machen soll ist zum einen Doppelbesetzungen aufzeigen und dann noch die Schichten des Mitarbeiters entsprechend der Einteilung abbilden. 

hoffe es kann mir hier jemand helfen. 

Grüße
CaptainHK


Angehängte Dateien
.xlsx   Beispieldatei.xlsx (Größe: 20,86 KB / Downloads: 5)
Antworten Top
#2
Hola,

neues Forum, neues Glück  :19:

Wieviele Standorte gibt es denn?

Gruß,
steve1da
Antworten Top
#3
ja quasi ^^ 

also standorte sollte eigentlich unerheblich sein. der algorithmus sollte so funktionieren:

1. Prüfe MitarbeiterXY am Datum XY und ob er in einer Liste vorkommt. 
2. Mehrmals vorhanden? wenn ja - mehrmals NICHT leer? --> Anzeige Fehler ; wenn nein
3. suche aus liste schnittstelle MitarbeiterXY und Datum XY die NICHT leer ist, ansonsten leer

so müsste es aussehen. Was er macht ist 
1. Prüfe MitarbeiterXY am Datum XY und ob er in einer Liste vorkommt. 
2. Mehrmals vorhanden? wenn ja - mehrmals NICHT leer? --> Anzeige Fehler ; wenn nein
3. suche aus liste schnittstelle MitarbeiterXY und Datum XY 

er nimmt eben aktuell den ersten eintrag der Schnittstelle. 

gruß
CaptainHK


*EDIT*

Geschafft. mit der Formel gehts: 

Code:
=INDEX(Hilfstabelle!B2:B17;VERGLEICH(1;MMULT((Hilfstabelle!A2:A17=Übersicht!A2)*(Hilfstabelle!B2:B17<>"");1);))

Natürlich noch einbinden die Überprüfung ob doppelt besetzt ist, aber soweit passt es  :17:


Code:
=WENNFEHLER(WENN(SUMMENPRODUKT((Hilfstabelle!$A$2:$A$17=$A2)*(Hilfstabelle!$B$1:$AF$1=B$1)*(Hilfstabelle!$B$2:$AF$17<>""))>1;"Fehler";INDEX(Hilfstabelle!B$2:B$17;VERGLEICH(1;MMULT((Hilfstabelle!$A$2:$A$17=Übersicht!$A2)*(Hilfstabelle!B$2:B$17<>"");1);)));"")
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste