Hallo liebe Leute,
hier meine Frage:
Ist es möglich in Excel eine Datenbasis von Werten um einen gewissen Prozentwert der gesamten Länge zu verkürzen. Konkret möchte ich quasi folgendes:
Istwert:
AAAABBBBCCCCDDDD
Sollwert (Verkürzung um 25%)
"LEER""LEER""LEER""LEER"AAABBBCCCDDD
Um mein Problem zu verdeutlichen habe ich noch einen Screenshot der Logik in Excel gemacht:
Im Anhang findet Ihr auch das orginale Excel File.
Mir ist es quasi wichtig, dass der Endzeitpunkt konstant bleibt und die Phasen vorher um einen gewissen prozentsatz verkürzt werden.
Über Hilfe würde ich mich sehr freuen :19: ,
Viele Grüße,
Markus
Hallöchen,
hier mal ein erster Ansatz. Du kannst die Anzahl Einträge und die letzte gefüllte Spalte ermitteln. Davon ausgehend ermittelst Du die erste.
Arbeitsblatt mit dem Namen 'Tabelle1' |
| C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
6 | | | | | | | | | | | | | | | | | | | | | | | letzte Spalte | erste Spalte |
7 | A | A | A | A | B | B | B | B | C | C | C | C | D | D | D | D | | | | | | 16 | 18 | 3 |
8 | | | A | A | A | A | B | B | B | B | C | C | C | C | D | D | D | D | | | | 16 | 20 | 5 |
9 | | A | A | A | A | B | B | B | B | C | C | C | C | D | D | D | D | | | | | 16 | 19 | 4 |
10 | | | | | | A | A | A | A | B | B | B | B | C | C | C | C | D | D | D | D | 16 | 23 | 8 |
11 | | | | | | | | | | | | | | | | | | | | | | | | |
12 | | | | | | | | | | | | | | | | | | | | | | | | |
13 | | | | | | | | | | | | | | | | | | | | | | | | |
14 | | | | | | | | | A | A | B | B | C | C | D | D | | | | | | | 18 | 10 |
15 | | | | | | | | | | | A | A | B | B | C | C | D | D | | | | | 20 | 12 |
16 | | | | | | | | | | A | A | B | B | C | C | D | D | | | | | | 19 | 11 |
17 | | | | | | | | | | | | | | A | A | B | B | C | C | D | D | | 23 | 15 |
Zelle | Formel |
X7 | =ANZAHL2(C7:W7) |
Y7 | {=MAX((C7:W7<>"")*SPALTE(C:W))} |
Z7 | =Y7-X7+1 |
X8 | =ANZAHL2(C8:W8) |
Y8 | {=MAX((C8:W8<>"")*SPALTE(C:W))} |
Z8 | =Y8-X8+1 |
X9 | =ANZAHL2(C9:W9) |
Y9 | {=MAX((C9:W9<>"")*SPALTE(C:W))} |
Z9 | =Y9-X9+1 |
X10 | =ANZAHL2(C10:W10) |
Y10 | {=MAX((C10:W10<>"")*SPALTE(C:W))} |
Z10 | =Y10-X10+1 |
Y14 | =Y7 |
Z14 | =Y14-X7/2 |
Y15 | =Y8 |
Z15 | =Y15-X8/2 |
Y16 | =Y9 |
Z16 | =Y16-X9/2 |
Y17 | =Y10 |
Z17 | =Y17-X10/2 |
Achtung, Matrixformel enthalten! |
Die geschweiften Klammern{} werden nicht eingegeben. |
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine. |
Diese Tabelle wurde mit Tab2Html (v2.5.0) erstellt. ©Gerd alias Bamberg |
Danke André,
2. Post folgt in Kürze
Hallo lieber André,
erstmal vielen Dank dass du dir überhaupt Gedanken um mein Problem machst. Leider trifft deine Lösung mein Problem noch nicht so ganz:
Ich möchte aus einer Datenbasis (AAAABBBBCCCCDDDD) automatisch einen prozentualen Anteil der Datenbasis generieren. Und zusätzlich muss der letzte Buchstab der Datenbasis immer konstant sein, also die neue Zahlenreihe einfach später beginnen.
Beispiel:
Datenbasis: AAAABBBBCCCCDDDD
Neu 75%: LeerLeerLeerLeerAAABBBCCCDDD
Neu 50%: Leer.......LeerAABBCCDD
Neu 50%: Leer.......LeerABCD
Das letzte D ist dabei immer in der selben Spalte.
Hier das Problem nochmal in Excel veranschaulicht (den 50% wert hätte ich gerne über eine Formel generiert) :
[url=
Dateiupload bitte im Forum! So geht es: Klick mich!]
Da ich mit dem Thema ziemlich "lost" bin, würde ich mich freuen wenn mir da jemand unter die Arme greift.
Viele Grüße,
Markus
Hallo Markus,
Ich denke, ich habe es schon verstanden. Die eine Formel ermittelt das Ende der Zeichenkette, was Du ja bei der reduzierten auch brauchst. Die zweite Formel ermittelt die Anzahl der Zeichen. Dann durch zwei geteilt und vom Ende abgezogen usw kommst Du zum neuen Anfang.
Wenn Du die Anzahl Zeichen durch 8 teilst, hast Du z.B. die Anzahl jedes Buchstaben bei 50%.
Daraus könnte man nun eine Formel für die gekürzte Kette bilden. Bin allerdings am Smartphone und kann nicht gleich weiter machen.
Die Formel könnte im Prinzip so anfangen
=wenn(spalte()
und dann eben In Abhängigkeit der Anzahl der Buchstaben weiter, im Prinzip
Wenn(zählenwenn(...a...)<2;a;wenn(..... usw
Die 2 dann natürlich nicht fest sondern anhand der Prozentzahl ermittelt.
Hallo,
kürzere Variante für unterschiedliche Teilungen (in 25%-Stufen)
Arbeitsblatt mit dem Namen 'Tabelle1' |
| B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W |
7 | | A | A | A | A | B | B | B | B | C | C | C | C | D | D | D | D | | | | | |
8 | | | | A | A | A | A | B | B | B | B | C | C | C | C | D | D | D | D | | | |
9 | | | A | A | A | A | B | B | B | B | C | C | C | C | D | D | D | D | | | | |
10 | | | | | | | A | A | A | A | B | B | B | B | C | C | C | C | D | D | D | D |
11 | | | | | | | | | | | | | | | | | | | | | | |
12 | | | | | | | | | | | | | | | | | | | | | | |
13 | 50% | | | | | | | | | | | | | | | | | | | | | |
14 | | | | | | | | | | A | A | B | B | C | C | D | D | | | | | |
15 | | | | | | | | | | | | A | A | B | B | C | C | D | D | | | |
16 | | | | | | | | | | | A | A | B | B | C | C | D | D | | | | |
17 | | | | | | | | | | | | | | | A | A | B | B | C | C | D | D |
Zelle | Formel |
C14 | =WENNFEHLER(WENN(SPALTE()<VERWEIS(9;1/($C7:$W7<>"");SPALTE($C7:$W7))-ANZAHL2($C7:$W7)*$B$13+1;"";INDEX($C7:$W7;AGGREGAT(15;6;SPALTE($C7:$W7)/($C7:$W7<>"")-2;1+ZÄHLENWENN($B14:B14;">""")/$B$13)));"") |
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg |