Hallo zusammen,
ich habe ein kleines Problem, und zwar versuche ich, für unsere Urlaubsplanungs-Datei ein Makro zu schreiben, mit dem ich für jeden Mitarbeiter (Zeile) den Start- und Endtermin von seinem nächsten Urlaub finden kann. Jede Spalte ist ein Tag, und wenn ein Mitarbeiter Urlaub an dem Tag hat, ist ein "x" hereingeschrieben (siehe Screenshot). Es wird bereits so sortiert, dass nur Zeilen da sind, wo in der kommenden Woche min. 1 Tag frei haben. Das ganze wird aus einer anderen Datei kopiert, daher ist der Montag der betroffenen Woche immer Spalte E, der Di F, Mi G usw. Über eine Wenn-Funktion kann ich so auf jeden Fall schon das Startdatum finden. Jetzt ist aber die Frage, wie finde ich das Enddatum (letzter Urlaubstag). Das einzige, was mir eingefallen ist, ist ein Makro, was bei jedem die Startzelle auswählt, und dann mit .End(xlToRight).Column das Ende findet. Das dauert aber ewig und ist bei 500+ Mitarbeitern=Zeilen nicht auszuhalten.
Gibt es da vielleicht einen einfacheren Befehl (Office 2019 Pro, kein 365!!), vielleicht auch fürs Startdatum statt der fünffach-WENN-Verkettung?
Mit VERGLEICH spuckt er manchmal auch irgendwas aus, etwa das letzte x überhaupt in der Matrix. (Siehe Tina Test im Screenshot)
Ich brauche aber nur das letzte x von der ersten x-Kette von links aus.
Danke für Eure Hilfe,
schönes Wochenende,
Mark
|