Zelle | Formel |
H9 | =TEXT(INDEX(Hilfstabelle!$D$2:$D$47;WENN(ISTFEHLER(VERGLEICH(ZEILE(B2)-2;Hilfstabelle!$H$2:$H$47;1));1;VERGLEICH(ZEILE(B2)-2;Hilfstabelle!$H$2:$H$47;1)+1));"0000")&"@" |
H10 | =TEXT(INDEX(Hilfstabelle!$D$2:$D$47;WENN(ISTFEHLER(VERGLEICH(ZEILE(B3)-2;Hilfstabelle!$H$2:$H$47;1));1;VERGLEICH(ZEILE(B3)-2;Hilfstabelle!$H$2:$H$47;1)+1));"0000")&"@" |
I10 | =WENN(H10<>H9;1;WENN(CIS1_Analyse_IST_SOLL!I9<SVERWEIS(INDEX(Hilfstabelle!$D$2:$D$47;WENN(ISTFEHLER(VERGLEICH(ZEILE(B3)-2;Hilfstabelle!$H$2:$H$47;1));1;VERGLEICH(ZEILE(B3)-2;Hilfstabelle!$H$2:$H$47;1)+1));Hilfstabelle!$D$2:$F$47;3;0);CIS1_Analyse_IST_SOLL!I9+1;1)) |
Tabellendarstellung in Foren
Die beiden Formeln in Zeile 10 kannst du dann runterkopieren. Wichtig hier ist die Abweichung in I9, dort nur die "1" eintragen, sonst gibt's Fehler.
Noch zur Hilfstabelle:
Spalte A: Dies ist eine Auflistung aller Segment-ID aus der Input-Tabelle, umgewandelt in Zahlen, da diese leichter handelbar sind. D.h. hier müssen die Formeln so weit runterkopiert sein, wie es Zeilen in der Input-Tabelle gibt
Spalte B: Hier wird gezählt, wie oft die Segment-ID jeweils vorkommt
Spalte C: Anzahl der Splits jeder Segment-ID
Spalte D: Dies ist eine Auflistung der Spalte A,
allerdings ohne Duplikate Wenn du ungefähr weißt, wieviel IDs es geben kann, solltest du die Formeln auch nur auf diese Anzahl begrenzen, das steigert die Performance ERHEBLICH. In der Formel selbst muß natürlich der komplette Bereich der Spalte A referenziert sein, dies hatte ich noch im Entwurfsstadium, da sich das leichter handeln läßt und die Fehlersuche leichter gestaltet.
Hier nochmal die Formeln aus dem Hilfsblatt:
Hilfstabelle | A | B | C | D | E | F | G | H |
1 | Überschrift | Vorkommen | Teile | Element | Vorkommen | Teile | Zeilen | Zeilen kum. |
2 | 100 | 1 | 6 | 100 | 1 | 6 | 6 | 6 |
Zelle | Formel |
A2 | =WECHSELN(Logfile_INPUT!C2;"@";"")*1 |
B2 | =ZÄHLENWENN($A$2:$A$399;A2) |
C2 | =ANZAHL2(Logfile_INPUT!D2:V2)-ANZAHLLEEREZELLEN(Logfile_INPUT!D2:V2)+1 |
D2 | {=INDEX(A$2:A$399;-1+KKLEINSTE(WENN(ZÄHLENWENN(BEREICH.VERSCHIEBEN(A$1;;;ZEILE($A$2:$H$399));A$2:A$399)=1;ZEILE($A$2:$H$399));ZEILE(A1)))} |
E2 | =SVERWEIS(D2;$A$2:$C$399;2;0) |
F2 | =SVERWEIS(D2;$A$2:$C$399;3;0) |
G2 | =E2*F2 |
H2 | =SUMME($G$2:G2) |