Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1464to1468
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bestimmtes Zählen bei einer Nummerierung

Bestimmtes Zählen bei einer Nummerierung
28.12.2015 15:44:13
Mike

Hallo, in die Runde.
Ich bin etwas am Verzweifeln und hoffe dass mir vielleicht jemand weiterhelfen kann.
Ich benötige eine Excel-Formel (falls möglich kein VBA) die mir Folgendes ausgibt.
Beispiele und gewünschte Ausgaben:
1 1
1.A 1
1.B 0
1.1 1
1.2 0
1.1.A 1
1.1.B 0
2 1
2.A 1
2.B 0
2.1.A 1
2.1.B 0
usw. usw.
Also, sobald irgendwo ein "B" vorkommt, oder ganz rechts etwas anderes, als eine "1" steht, soll die Formel "0" ausgeben. Auch bei ganzen Zahlen (die allein stehen) unter 500.
Ich hatte zunächst an einen SVerweis gedacht, leider gibt es zu viele Möglichkeiten und ich wäre Wochen damit beschfäftigt die alle aufzuschreiben.
Meine derzeitige Formel scheitert bei "1.1.B", da die erste"1" den Wert schon auf "1" setzt, obwohl das "B" eine "0" erzeugen soll.
Über etwas Hilfestellung würde ich mich sehr freuen.
Hier ist mein derzeitiger Ansatz
=WENN(ODER(TEIL(A1;3;1)="1";TEIL(A1;3;1)="A";TEIL(A1;5;1)="A";TEIL(A1;5;1)="1";(A1)<="500");"1"; "0")
Viele Grüße
Mike

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestimmtes Zählen bei einer Nummerierung
28.12.2015 15:50:43
Mike
Da mir bei dem Beispiel mit der Ausgabe irgendwie die Formatierung flöten ging, habe ich hier mal einen Screenshot, da es sonst missverständlich sein könnte.
Links die Nummerirerung und rechts die gewünschete Ausgabe.
Userbild

AW: Bestimmtes Zählen bei einer Nummerierung
28.12.2015 16:34:23
Gerd
Hallo Mike!
=ODER(ISTZAHL(A1);RECHTS(A1;1)="1";RECHTS(A1;1)="A")*1 Gruß Gerd

AW: Bestimmtes Zählen bei einer Nummerierung
28.12.2015 17:30:26
Josef
Hallo
Und was ist mit Zahlen über 500?
Sollte das nicht null ergeben.
Wenn dem so ist, wird’s etwas schwieriger, vor allem wenn dann noch rechts eine 1 steht z.B. 551
Gruss Sepp

Anzeige
AW: Bestimmtes Zählen bei einer Nummerierung
28.12.2015 17:37:23
Mike
Vielen Dank für die Hilfe! Das funktioniert wunderbar.
Vom Prinzip her ist das mit der 500 egal, war ein Denkfehler von mir. Dies wird in der Praxis vermutlich auch nie der Fall sein, dass die Zahl größer als 500 wird.
Ich verstehe nicht so ganz warum da immer 1 rauskommt, wenn der Zelleninhalt mit 1 multipliziert wird. **Kopfkratz**

AW: Bestimmtes Zählen bei einer Nummerierung
28.12.2015 17:42:23
Mike
Mir ist gerade aufgefallen, dass er nicht zählt, wenn einzelne Zahlen größer als "1" in der Zelle stehen.
Gibt es dafür eine Lösung? Bspw. gibt er mir eine "0" aus, wenn ich eine "2" eintrage, obwohl er eine "1" ausgeben sollte.

Anzeige
AW: Bestimmtes Zählen bei einer Nummerierung
28.12.2015 18:30:36
Josef
Hallo Mike
Dann ist die Spalte A als Text formatiert, und die Zahlen sind dann genau genommen auch Text.
Standartmässig sind dann diese Zahlen wie Text auch linksbündig angeordnet.
Mit folgender Formel sollte dieser Umstand nun keine Rolle mehr spielen
=ODER(RECHTS(A1)={"1";"A"};ISTZAHL(-A1))*(A1"")
Und noch zu deiner Zusatzfrage von oben
Da werden nicht Zellinhalte mit 1 Multipliziert, sondern Wahrheitswerte aus der ODER- Funktion
WAHR*1 ergibt 1, FALSCH*1 ergibt 0
Gruss Sepp

AW: Bestimmtes Zählen bei einer Nummerierung
28.12.2015 19:51:14
Mike
Funktioniert super, danke :)
Könnten Sie mir den Term: ISTZAHL(-A1))*(A1"") einmal grob erläutern?

Anzeige
grobe Erläuterung
28.12.2015 20:19:05
Josef
Hallo
Gib probehalber einmal folgende Formel ein:
=1*(A1"") und schaue was, wann herauskommt
dasselbe mit:
=1*ISTZAHL(-A1) hier ist das Minus dazu da, eine Text-Zahl in eine echte Zahl umzuwandeln
Gelingt diese Umwandlung ergibt die Funktion ISTZAHL "WAHR" ansonsten "FALSCH"
Letztere Formel liegt übrigens innerhalb der ODER-Funktion
Gruss Sepp

AW: grobe Erläuterung
01.01.2016 13:08:16
Mike
Leider passt das mit der Formel doch noch nicht so ganz. Es ist etwas kniffliger als erwartet.
Ich habe das Problem, insbesondere mit Zahlen, die größerals "9" sind. Ich habe versucht es mit "Teil"hinzubekommen.
Hier hängt es nun u.a. bei "14.10.A" da die Zahl hinter hinter dem ersten Punkt größer als 1 ist, müsste eine "0" ausgegeben werden, das "A" am Schluss erzeugt aber eine "1". Das müsste sich irgendwie nach der Reihenfolge abprüfen lassen.
Hier nochmal der Ansatz von Gerd.
=ODER(RECHTS(A2)={"1";"A"};ISTZAHL(-A2))*(A2<>"")
Und hier die Formel mit dem Versuch es über "Teil" hinzubekommen in Verbindung mit derFormel von Gerd.=WENN(TEIL(A2;1;2)>"9";WENN(TEIL(A2;4;1)="A";"1";WENN(TEIL(A2;4;1)>"1";"0";ODER(RECHTS(A2)={"1";"A"};ISTZAHL(-A2))*(A2<>"")));WENN(TEIL(A2;3;1)="A";"1";WENN(TEIL(A2;3;1)>"1";"0";ODER(RECHTS(A2)={"1";"A"};ISTZAHL(-A2))*(A2<>""))))
Ich komme leider nicht drauf wie. Die Formel wird langsam auch etwas unübersichtlich.
Ich füge noch einen Screenshot hinzu, wo ich die Zellen grau markiert habe, wo der Wert nicht passt.
Gruß, Mike
Userbild

Anzeige
AW: grobe Erläuterung
02.01.2016 13:24:01
Mike
Hat jemand eine Idee, wie ich das Problem lösen kann?
Gesundes neues Jahr und viele Grüße!
Mike

AW: Deine Angaben sind mE nicht eindeutig ...
03.01.2016 12:04:23
...
Hallo Mike,
... so wie Du es nun dargestellt und beschrieben hast (da waren und sind noch Unklarheiten) z.B. mit folgender Formel. Doch ist E22 auch korrekt? Wenn nein, solltest Du Deine Bedingungen noch mal eindeutig zusammenstellen.
 ABE
1 SOLLIST
2111
31.A11
41.B00
51.1.A11
61.1.B00
71.200
81.200
91.2.a00
10211
112.1.a11
122.1.b00
132.200
1414.111
1514.200
1614.A11
1714.B00
1814.1.A11
1914.10.A00
2014.10.B00
2114.2.B00
2214.21.A?1

Formeln der Tabelle
ZelleFormel
E2=(RECHTS(WECHSELN(1&TEIL(WECHSELN(GROSS(A2); ".A";"")&".";FINDEN(".";WECHSELN(GROSS(A2); ".A";"")&".")+1;9); ".";""); 1)="1")*1

Bedingte Formatierungen der Tabelle
ZelleNr.: / BedingungFormat
E21. / Formel ist =(C2<>$B2)*(C2<>"")Abc


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...

Anzeige
AW: Deine Angaben sind mE nicht eindeutig ...
03.01.2016 15:27:23
Mike
Hallo Werner, vielen Dank für deine Antwort.
Die Formel ist fast perfekt, bis auf den Fall, wenn die Zahl nach dem ersten Punk zweistellig ist und rechts eine 1 steht.
Z.B. "14.21.A" oder bei "1.11" in beiden Fällen sollte er eine "0" ausgeben.
Ich versuche es noch einmal kurz zu erläutern.
Also, es geht darum, dass "Unterpunkte" nicht gezählt werden sollen, bzw. nur der erste.
Es gibt im Prinzip immer nur einen Hauptpunkt, welcher nur einmal gezählt werden darf.
Also müsste bsw. bei "1.11" eine "0" ausgegeben werden, da es der elfte Unterpunkt ist.
Auch bei "1.11.A" soll eine "0" ausgegeben werden. Eine "1" sollte bei diesem Beispiel nur bei "1.1"; oder 1.1.A ausgeben.
Groß- und Kleinschreibung bei den Buchstaben sind egal, es kommt beides vor.
Ich würde mich freuen, wenn du mir einmal diesen Teil erläutern könntest.
=WECHSELN(1&TEIL(WECHSELN(GROSS(A2); ".A";"") Insbesondere das "1&Teil" habe ich so noch nicht gesehen.
Ich füge noch einmal eine leicht abgewandelte Beispieltabelle ein, ich hoffe hier sind nun alle möglichen Fäller ersichtlich und nachvollziehbar.
Userbild
Dankeschön für die Hilfe
Gruß Mike

Anzeige
AW: nun ist es eindeutig ...
03.01.2016 16:37:33
...
Hallo Mike,
... dann eine Lösung mit folgender (noch nicht optimierten) Formel:
 ABE
1 SOLLIST
2111
31.A11
41.B00
51.1.A11
61.1.B00
71.200
81.200
91.2.a00
101.1100
111.11.A00
121.11.B00
13211
142.1.a11
152.1.b00
162.200
1714.111
1814.200
1914.A11
2014.B00
2114.1.A11
2214.10.A00
2314.10.B00
2414.2.B00
2514.21.A00
2614.321.A00
2714.1.B00
28   

Formeln der Tabelle
ZelleFormel
E2=((WENNFEHLER(VERWEIS(999;RECHTS(WECHSELN(WECHSELN(GROSS(A2); ".A";""); ".";"x"); ZEILE(A$1:A$22))*1); 0)=1)+WENNFEHLER((WECHSELN(WECHSELN(GROSS(A2); ".A";""); ".";"x")^0=1)*1;0)>0)*1


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Werner
.. , - ...
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige