Werte neuanordnen

Hallo,

gibt es eine Möglichkeit (ohne Makro) ein Wert aus einer Liste in eine vorher definierte Zelle einzufügen, wenn die Reihe des Wertes unbekannt ist?

Bsp.:

In Zelle A 5 steht 10 (aber nicht immer, manchmal auch in Reihe A4 oder A6 oder woanders)
In Zelle A 11 steht 15(aber nicht immer, manchmal auch in Reihe A10 oder A12 oder woanders)

Nun sollen die Werte in B1 und B2 in ihrer Reihenfolge kopiert werden.

Die Source-Spalte ist bekannt, die Reihe des Wertes und der Wert selbst jedoch nicht. Geht sowas ohne Makro?..gerne auch über Umwege. 

Vielen Dank im Voraus
Rene

Hallo Rene
deine Beschreibung ist für mich nicht gerade aufschlussreich.
bin mir gar nicht sicher ob du so etwas meinst, einfach mal anschauen:
Klick mich
Wenn das anders gemeint ist benötige ich mehrINPUTwo was steht und was damit geschehen soll.

Gruß Holger

Hallo Rene
deine Beschreibung ist für mich nicht gerade aufschlussreich.
bin mir gar nicht sicher ob du so etwas meinst, einfach mal
anschauen:
Klick mich
Wenn das anders gemeint ist benötige ich mehrINPUTwo was
steht und was damit geschehen soll.

Habs mal versucht, aber irgendwie macht es nicht das, was es soll.

Ich möchte quasi, dass D2 bis D9 automatisch nur mit den besetzten Zellen von B2 bis B15 ausgefüllt wird. Die 11 von A5 soll also automatisch auch in D4 stehen. Und die 12 von A8 soll automatisch auch in D5 stehen.

Ich möchte quasi, dass D2 bis D9 automatisch nur mit den besetzten Zellen von B2 bis B15 ausgefüllt wird.

Also umgekehrt, du möchtest eine Liste mit Lücken lückenlos auflisten
2. Versuch, Klick mich
Beachte unbedingt den Hinweis zur Matrixformel, sonnst funktioniert die Formel nicht

Gruß Holger

1 Like

Ich möchte quasi, dass D2 bis D9 automatisch nur mit den
besetzten Zellen von B2 bis B15 ausgefüllt wird.

Also umgekehrt, du möchtest eine Liste mit Lücken lückenlos
auflisten
2. Versuch, Klick mich
Beachte unbedingt den Hinweis zur Matrixformel, sonnst
funktioniert die Formel nicht

Hallo,

ist genau das, was ich brauche. Super! Also die Formel hab ich eingegeben und mit dem Befehl strg+shift+enter beendet. Dann kamen automatisch { } . Anschließend hab ich die Zellen runtergezogen, aber nichts ist passiert.

=IF(ROW(W36)>COUNTA(W:W),"",INDEX(W:W,SMALL(IF(W$36:W$50"",ROW(W$36:W$50)),ROW(W36))))

Anstatt 1:1000 hab ich die Bereich gewählt, in dem Zahlen vorkommen können.

Aber es funktioniert nicht. Alle Zellen bleiben leer, obwohl in Zelle W39 und W47 eine Zahl steht, die nun in X36 und X37 stehen sollte.

Angepasste Matrix-Formel
=WENN((ZEILE(W36)-ZEILE(W$35))>ANZAHL2($W$36:blush:W$100);"";INDEX($W$36:blush:W$100;KKLEINSTE(WENN($W$36:blush:W$100"";ZEILE($1:blush:64));ZEILE(B1))))

=WENN((ZEILE(W36)-ZEILE(W$35))>
36 = oberste Zeile - W$35 ( Ergebnis zuerst 1 )

ZEILE($1:blush:64)) [Ergebins: 1;2;3;4…]
Der Zähler beginnt immer mit 1;
Die Matrix muss genau so groß sein wie alle anderen [100-36=64 Zellen]

);ZEILE(B1))))
Beginnt immer mit der ersten Zeile der Buchstabe B ist egal [Ergebins: 1;2;3;4…]

Matrix-Formel!!
wie gehabt abschließen!

1 Like

Das ging auf die schnelle, muss gleich weg

=WENN((ZEILE(W36)-ZEILE(W$35))
dafür kannst du natürlich auch, wie ganz hinten in der Formel
=WENN(Zeile(B1)
schreiben

Gruß Holger

1 Like

Das ging auf die schnelle, muss gleich weg

=WENN((ZEILE(W36)-ZEILE(W$35))
dafür kannst du natürlich auch, wie ganz hinten in der Formel
=WENN(Zeile(B1)
schreiben

=IF(ROW(W36)>COUNTA(W:W),"",INDEX(W:W,SMALL(IF(W$36:W$50"",ROW(W$36:W$50)),ROW(W36))))

Du meinst wirklich „Zeile“, nicht „Zelle“ (?)

Er gibt mir leere Zellen zurück.

An welcher Stelle müsste ich die -W35 setzen und was müsste ich löschen? Wenn ich WENN((ZEILE(36)-ZEILE(37))>ANZAHL2(W:W)…, gibt er mir #num! in allen Zeilen aus.

Meine Matrixfunktion ist irgendwie komisch.

AB39 : {=Z38:Z40+AA41:AA43} = 1+3=4
AB40 : {=Z38:Z40+AA41:AA43} = 4+5=4
AB41 : {=Z38:Z40+AA41:AA43} = 7+2=4

Z38=1
Z39=4
Z40=7
AA41=3
AA42=5
AA43=2

Wenn ich das eingebe, bekomme ich als Ergebnis nur das der ersten Zeile. Was mache ich falsch?
Das hat evtl. auch Folgen für die von dir gegebene Formel.

Oh ich verzweifele.

Ich habe noch mal eine Ansicht erstellt

Gruß Holger

1 Like

=WENN(ZEILE(B1)>ANZAHL2($W$36:blush:W$100);"";INDEX($W$36:blush:W$100;KKLEINSTE(WENN($W$36:blush:W$100"";ZEILE($1:blush:64));ZEILE(B1))))

=IF(ROW(B1)>COUNTA($W$36:blush:W$100),"",INDEX($W$36:blush:W$100,SMALL(IF($W$36:blush:W$100"",ROW($1:blush:64)),ROW(B1))))

Du meinst wirklich „Zeile“, nicht „Zelle“ (?)

Ja, das ist richtig
zu erklären am einfachen in der Funktion =KKLEINSTE(…;1)
=KKLEINSTE(…;1)
=KKLEINSTE(…;2)
=KKLEINSTE(…;3)
=KKLEINSTE(…;4)
… und so weiter …
damit die Formel kopierbar wird benötige ich eine Funktion die mir die aufsteigende Zahl erzeugt.
=KKLEINSTE(…;zeile(B1))
völlig egal welche Zelle aus der ersten Zeile da drin steht, Hauptsache sie startet mit 1
Es sind „Zähler“ die sich Zeile für Zeile um 1 erhöhen und oben mit 1 beginnen.

Sinngemäß ist das bei ZEILE($1:blush:64) genau das gleiche.
Wichtig ist, das bei einer Matrix-Formel alle Bezüge gleich groß sind
$W$36:blush:W$100 = 65 Zellen
$1:blush:64 = 65 Zeilen

Wenn du die Formel noch richtig mit STRG+SHIFT+RETURN abschließt und sie dann runter kopierst sollte das funktionieren.

Gruß Holger

1 Like

Ich habe noch mal eine Ansicht erstellt

jetzt schlag mich weich und gib mir Hundenamen…es funktioniert…

Jetzt wollte ich dir die Liste mal schicken und habe alles rund um die Liste gesäubert. Plötzlich funktioniert´s.

Super!!! Danke für die Zeit!!!

schön das es funktioniert.

Danke fürs Feedback
Holger

1 Like