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.

Struktur aufbauen Zählenwenn?
#1
Hi zusammen

Ich würde gerne eine etwas kompliziertere Struktur aufbauen. 
Ist es möglich das in der Spalte A Durchnummeriert wird wie ich in der Beispieldatei von Hand eingetragen habe? 
Nummeriert wird immer neu nach dem Punkt, in Abhängigkeit ob in Spalte B,C,D oder E ein text steht.

Ist so etwas mit einer Formel überhaupt möglich?
Wenn nein, würde es mit einem Script funktionieren?

Vielen Dank für die Hilfe.


Angehängte Dateien
.xlsx   test.xlsx (Größe: 9 KB / Downloads: 17)
Antworten Top
#2
Hallo Zeichner.

Ja, es ist mit Formeln möglich. Aber PUHHHH, schön ist was anderes.

Code:
=WENN(B5<>"";LINKS(A4;1)+1&".0.0";WENN(C5<>"";LINKS(A4;1)&"."&TEIL(A4;3;1)+1&".0";WENN(D5<>"";LINKS(A4;3)&"."&TEIL(A4;5;1)+1;"Fehler")))
Das hat natürlich noch ein paar Hasenfüße:
- Die erste Zeile muss händisch mit 1.0.0 markiert werden. Ab dann kannst Du die Formel einfügen.
- Es werden alle Stufen 3-stellig angegeben. Also im Zweifel hinten mit Nullern.
- Die Erweiterung auf mehr Stufen ist recht aufwändig.

Also es geht, mit einem Makro geht es aber sicher schneller, schöner und anpassungsfreudlicher.

Gruß
Sebastian
[-] Folgende(r) 1 Nutzer sagt Danke an Bast4i für diesen Beitrag:
  • Zeichner
Antworten Top
#3
Hi

mal 2 Varianten dazu.
____|____A___|__B__|__C__|__D__|__E__|_F|____G___|

   1|        |     |     |     |     |  |        |
   2|        |     |     |     |     |  |        |
   3|        |     |     |     |     |  |        |
   4| 1.0.0.0|text |     |     |     |  |       1|
   5| 1.1.0.0|     |text |     |     |  |     1.1|
   6| 1.2.0.0|     |text |     |     |  |     1.2|
   7| 2.0.0.0|text |     |     |     |  |       2|
   8| 2.1.0.0|     |text |     |     |  |     2.1|
   9| 2.1.1.0|     |     |text |     |  |   2.1.1|
  10| 2.1.2.0|     |     |text |     |  |   2.1.2|
  11| 2.1.3.0|     |     |text |     |  |   2.1.3|
  12| 2.1.4.0|     |     |text |     |  |   2.1.4|

Code:
A4   =ANZAHL2($B$4:B4)&"."&ANZAHL2(INDEX(C:C;VERGLEICH("*";$B$4:B4;-1)+3):C4)&"."&ANZAHL2(INDEX(D:D;WENNFEHLER(VERGLEICH("*";$C$4:C4;-1);1)+3):D4)&"."&ANZAHL2(INDEX(E:E;WENNFEHLER(VERGLEICH("*";$D$4:D4;-1);1)+3):E4)

Code:
G4   =TEIL(ANZAHL2($B$4:B4)&"."&ANZAHL2(INDEX(C:C;VERGLEICH("*";$B$4:B4;-1)+3):C4)&"."&ANZAHL2(INDEX(D:D;WENNFEHLER(VERGLEICH("*";$C$4:C4;-1);1)+3):D4)&"."&ANZAHL2(INDEX(E:E;WENNFEHLER(VERGLEICH("*";$D$4:D4;-1);1)+3):E4);1;WENNFEHLER(FINDEN(".0";ANZAHL2($B$4:B4)&"."&ANZAHL2(INDEX(C:C;VERGLEICH("*";$B$4:B4;-1)+3):C4)&"."&ANZAHL2(INDEX(D:D;WENNFEHLER(VERGLEICH("*";$C$4:C4;-1);1)+3):D4)&"."&ANZAHL2(INDEX(E:E;WENNFEHLER(VERGLEICH("*";$D$4:D4;-1);1)+3):E4))-1;8))

Gruß Elex
[-] Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:
  • Zeichner
Antworten Top
#4
Hallo Elex

Nicht schlecht.
Leider weicht das Ergebnis in sieben Fällen vom Wunschergebnis ab.
1,1  1,2  2,1  3,1  3,2  3,3  und  3,4  werden mit Komma geschrieben und nicht mit Punkt.
2.2  weicht aber von dieser Regel ab.
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#5
Hi

das im Bsp. mal Komma und mal Punkt verwendet wurde war mir entgangen. Ich erkenne aber auch keine Logik für die Verteilung der beiden.
 
Formel noch mal etwas verändert.   (Formel ist jetzt mit shift+strg+Enter zu schließen)

A4   =WECHSELN(ANZAHL2($B$4:B4)&"."&ANZAHL2(INDEX(C:C;MAX(($B$4:B4<>"")*ZEILE($A$4:$A4))):C4)&"."&ANZAHL2(INDEX(D:D;MAX(($B$4:C4<>"")*ZEILE($A$4:$A4))):D4)&"."&ANZAHL2(INDEX(E:E;MAX(($B$4:D4<>"")*ZEILE($A$4:$A4))):E4);".0";"")

Gruß Elex
[-] Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:
  • Zeichner
Antworten Top
#6
Vielleicht wollte der Fragesteller die Helfer auch nur verwirren.
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#7
Thumbs Up 
Hi Elex

Vielen Dank für die Formel, sie funktioniert :D
Das Problem mit den Komma habe ich wieso auch immer nicht.

Wow, da wäre ich von selber wohl nie drauf gekommen, echt komplex das ding..

Top   :23:
Antworten Top
#8
Hi Elex

Ich habe gerade bemerkt das es wenn hoch kommt sogar noch 2 kommastellen mehr sein könnten   Dodgy
Leider verstehe ich die Formel nicht um Sie selber zu ergänzen..
Kannst du mir noch einmal helfen?
Ich nutze deine Formel die du in spalte G eingetragen hast, die ohne die 0.
Antworten Top
#9
Sub Autonummerierung(): Workbooks.Add xlWorksheet: [A1:D1] = Split("Trigger Kapitel Titel Kombi")
[A2:A21] = WorksheetFunction.Transpose(Split("1 1 1 1 0 0 -1 -1 1 0 1 0 -2 1 0 0 -2 1 0 -1"))
[C2:C21] = WorksheetFunction.Transpose(Split("Getränke Wasser abgefüllt still medium classic " & _
"Kranberger Bier Pils Weizen Kristall Hefe Wein rot weiß rosé Essen Vorspeise Nachspeise Fazit"))
ActiveWorkbook.Names.Add Name:="Nummerierung", RefersToR1C1:= _
"=TEXT(SUBSTITUTE(R[-1]C,""."",)*10^RC[-1]+1,REPT(""0""""."""""",LEN(R[-1]C)/2+RC[-1]))"
[B2].FormulaR1C1 = "=""1.""": [B3:B21].FormulaR1C1 = "=Nummerierung"
[D2:D21].FormulaR1C1 = "=RC[-2]&"" ""&RC[-1]"
[E1] = 8: [E2:E21].FormulaR1C1 = "=REPT("" "",(LEN(RC[-3])-2)/2*R1C)&RC[-2]": End Sub

Das Makro erstellt Dir eine selbsterklärende Datei. Ich habe auch noch eine unbegrenzte Variante.
Antworten Top
#10
Hi

die Formel aus #5 ist auch ohne 0. Jetzt um 2 Stellen erweitert.
Formel mit shift+strg+Enter zu schließen
Code:
=WECHSELN(ANZAHL2($B$4:B4)&"."&ANZAHL2(INDEX(C:C;MAX(($B$4:B4<>"")*ZEILE($A$4:$A4))):C4)&"."&ANZAHL2(INDEX(D:D;MAX(($B$4:C4<>"")*ZEILE($A$4:$A4))):D4)&"."&ANZAHL2(INDEX(E:E;MAX(($B$4:D4<>"")*ZEILE($A$4:$A4))):E4)&"."&ANZAHL2(INDEX(F:F;MAX(($B$4:E4<>"")*ZEILE($A$4:$A4))):F4)&"."&ANZAHL2(INDEX(G:G;MAX(($B$4:F4<>"")*ZEILE($A$4:$A4))):G4);".0";"")

Gruß Elex
[-] Folgende(r) 1 Nutzer sagt Danke an Elex für diesen Beitrag:
  • Zeichner
Antworten Top


Gehe zu:


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