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.

Zelleninhalt in nächste freie Zelle kopieren, wenn Bedingung erfüllt
#1
Hallo zusammen,

ich suche jetzt über die letzten Tage jeweils mehrere Stunden ohne Erfolg nach einer Lösung für mein Problem:
Ich habe einen Urlaubsplaner, bei dem in Zeile 1 ab Spalte H die Daten eines Jahres stehen (also bis Spalte NI -> 365 Tage).
Ab Zeile 4 stehen die Mitarbeiter. An den entsprechenden Urlaubstagen wird ein U gesetzt (was letztlich die Bedingung für das Kopieren der Daten in Zeile 1 ist).
Ich möchte in einem weiteren Tabellenblatt nun die angekreuzten Daten (wenn also die Bedingung erfüllt ist) hinter dem Namen des Mitarbeiters (ohne leere Zellen) ab Spalte H aufgelistet haben, damit ich in einem Serienbrief die genehmigten Arbeitstage für den Mitarbeiter ausdrucken kann. Die Anforderung hört sich erst mal recht simpel an.

Ich habe bereits viele Beiträge gefunden, wo ähnliches behandelt wurde, jedoch geht es dabei um eine senkrechte Auflistung (also, dass Daten aus Spalte A übernommen werden, sofern die Bedingung in Spalte B erfüllt ist) und nicht in der Wagerechten, wie bei meinem Beispiel. Dabei half folgende Lösung:

=WENN(ZEILE(Tabelle1!1:1)>ZÄHLENWENN(Tabelle1!$B$2:$B$20;"offen");"";INDEX(Tabelle1!A:A;KKLEINSTE(WENN(Tabelle1!$B$2:$B$20="offen";ZEILE(Tabelle1!$2:$20));ZEILE(A1))))

Diese habe ich versucht, nun auf mein Beispiel zu übertragen, was mir trotz vielen hin und her probieren leider nicht gelungen ist.

Hat jemand einer Idee, wie ich das Problem lösen könnte?
Grundsätzlich finde ich eine VBA-Lösung auch interessant, kann dazu aber auf Grund mangelnder Kenntnisse nicht beisteuern.

Besten Gruß
Torben
Antworten Top
#2
Hallo Torben,

stell uns bitte eine Beispieltabelle mit händisch eingetragenem Wunschergebnis vor. Lies mal hier: https://www.clever-excel-forum.de/thread-326.html
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#3
Hallo Torben.

WillWissen hat Recht, Du solltest ein Beispiel einstellen.

Da die Aufgabenstellung aber für mich überschaubar ist, mache ich Dir jetzt doch schon einen Vorschlag.

Du solltest KKLEINSTE durch AGGREGAT(15;2;... ) ersetzen und dann die Bedingung ' = "U" ' in die Selektion integrieren. So zum Beispiel :

WENNFEHLER(AGGREGAT(15;2;($H$1:$NI$1)/($H4:$NI4="U");SPALTE()-7);"")

Ein Beispiel findest Du im Anhang, ich habe das Ergebnis nur noch nicht in ein anderes Tabellenblatt eingefügt, sondern "unten dran gehängt". Wenn Du nähere Erläuterungen wünscht, warum durch die Bedingung hier dividiert wird, kann ich das gerne nachliefern. 

LG Peter


Angehängte Dateien
.xlsx   151-Forum 2018.11.18 Urlaube verdichten Zusammenfassen.xlsx (Größe: 9,84 KB / Downloads: 10)
Antworten Top
#4
Hallo,

vielen Dank für die schnellen Antworten. Die Beispieldatei habe ich angehängt. Deinen Tipp, Peter, werder ich aber gleich mal ausprobieren...


Angehängte Dateien
.xlsx   Beispieldatei.xlsx (Größe: 433,15 KB / Downloads: 7)
Antworten Top
#5
Also, die Formel hat super funktioniert. Somit hast du meiner Frau ungefähr 10 Arbeitsstunden erspart, die den Urlaubsplan bislang immer händisch ausgefüllt hat und daraus 50 Worddokumente für alle Mitarbeiter erstellt hat. Vielen dank dafür!

Hat jemand eine Idee, ob man die aufgezählten Daten auch zusammenfassen kann, sofern sie aufeinander folgen? Also, dass nicht 1.2.19 (in Zelle1), 2.2.19 (Zelle 2), 3.2.19 (Zelle 3) zu 1.2.19-3.2.19 ausgegeben wird?


Angehängte Dateien
.xlsx   Kopie von Kopie von Beispieldatei.xlsx (Größe: 440,82 KB / Downloads: 4)
Antworten Top
#6
Guten Abend.

Ich kann Dir eine Lösung vorschlagen, die nicht besonders elegant, aber vielleicht hilfreich ist.

Ich nutze weitere Zeilen 14 bis 16 in meinem Beispiel, die das bisherige Ergebnis aus Zeile 9 bis 11 verwenden.

Die Formel lautet für Zelle H14        WENNFEHLER(WENN(H9-1=G9;WENN(H9+1=I9;WENN(ODER(G14="bis";G14="");"";"Bis");H9);H9);"")

Wenn es aufeinanderfolgende Termine gibt, bleiben also der erste und der letzte erhalten, der zweite wird durch "bis" ersetzt und der dritte und weitere bleiben leer. Ich habe die Erwartung, dass beim Übertragen nach Word die Leerzellen verschwinden und nicht mehr stören, kenne mich da aber nicht aus. 

Ohne Gewähr !!  Ich habe nur die wenigen Fälle getestet. 

Rückfragen und Erläuterungen gerne.

Peter


Angehängte Dateien
.xlsx   151-Forum 2018.11.18 Urlaube verdichten Zusammenfassen.xlsx (Größe: 13,28 KB / Downloads: 8)
Antworten Top


Gehe zu:


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