Zeilennummerierung mit Leerzeilen

Sehr geehrte Mitglieder,
kennen Sie eine einfache Möglichkeit wie man in Rechenblättern eine lfd. Nummerierung mit unregelmäßigen Leerzeilen einfügen kann:

Beispiel:

Spalte A --> Nummerierung
Spalte B --> text

Jeder Text in Spalte B soll eine lfd. Nummer erhalten. Der erste Eintrag steht in B6 und in A6 soll eine 1 stehen. Der folgende Beitrag steht in B20 und in A20 soll eine 2 stehen. Dies wird so weitergeführt und die Anzahl der Zeilen zwischen den Einträgen unterliegt keiner logischen Regel.

Über eine Rückmeldung freue ich mich.

Christian A. Buschhoff

Re: Zeilennummerierung mit Leerzeilen

#10716 On 20 Juli, 2012 11:36 Jürgen Schell said,

Ich hab folgenden Ansatz probiert:

In Zelle A6 steht die Formel

Wenn(Typ(B6)=2;VSuchlauf(B$5:B6;Typ(LfdZelle)=2))

Die wurde dann nach unten aufgefüllt.

(Hier ist vorausgesetzt, dass die Zelle B5 keinen Text enthält. Wenn doch, muss in A6 eine Formel wie

Wenn(Typ(B6)=2;1)

stehen, in A7 dann
Wenn(Typ(B13)=2;VSuchlauf(B$6:B13;Typ(LfdZelle)=2))

die nach unten aufgefüllt wird.)

Jürgen

www.j-schell.de

Re: Zeilennummerierung mit Leerzeilen

#10717 On 20 Juli, 2012 12:14 Thomas Kaegi said,

Hallo Christian

Als erstes zwei Fragen:
1. Sind die Zellen in Spalte B, in welchen kein Text steht, alle leer (also auch Zeile 1)
2. Was sind das für Texte? Gewöhnliche Zelleninhalte, die von RagTime automatisch als Text erkannt werden (Typ=2), oder sind es Mehrzeiler (Typ=3)? Oder können gar beide Typen vorkommen?

Falls Annahme 1 zutrifft spielt Frage 2 gar keine Rolle mehr und ich schlage folgende Formel in irgend einer Zelle des Rechenblattes vor (ich setze solche Formeln normalerweise in eine Zelle der ersten Zeile, die bei mir immer einen Tabellenkopf enthält und die deshalb sicher nie gelöscht wird):

VSuchlauf(B:B;LfdZelle≠'';0;SetzeZelle(LfdZähler;A:A;LfdIndex))

Falls in Zeile 1 ein Tabellenkopf ist und dort auch in Spalte B etwas steht, muss die Formel ergänzt werden:

VSuchlauf(B:B;Und(LfdIndex>1;LfdZelle≠'');0;SetzeZelle(LfdZähler;A:A;LfdIndex))

Falls die Antwort auf meine erste Frage negativ ist, also auch in weiteren Zellen in Spalte B irgendwelche Werte stehen können (Zahl, Datum) und gleichzeitig die Texte sowohl vom Typ 2 oder 3 sein können, würde die Formel - wenn zudem in Zeile ein Tabellenkopf steht - so heissen:

VSuchlauf(B:B;Und(LfdIndex>1;Oder(Typ(LfdZelle)=2;Typ(LfdZelle)=3));0;SetzeZelle(LfdZähler;A:A;LfdIndex))

Wenn nur ein Texttyp vorkommt, kann die Oderfunktion und das Prüfen auf den zweiten Typ entfallen.

Falls es in der Tabelle Änderungen geben sollte, die dazu führen, dass Zahlen in Spalte A stehen bleiben, obwohl in Spalte B kein Text steht, dann erfüllt die folgende Formel den Zweck (immer noch unter der Annahme, dass in Zeile 1 ein Tabellenkopf steht):

VSuchlauf(B:B;LfdIndex>1;0;SetzeZelle('';A:A;LfdIndex))&VSuchlauf(B:B;Und(LfdIndex>1;Oder(Typ(LfdZelle)=2;Typ(LfdZelle)=3));0;SetzeZelle(LfdZähler;A:A;LfdIndex))

Dabei löscht der erste Suchlauf den Inhalt von Spalte A (ausser der Kopfzeile) und der zweite setzt die Nummern ein. Berechnet wird die Formel nur, wenn sich in Spalte B etwas ändert.

Gruss, Thomas

Re: Zeilennummerierung mit Leerzeilen

#10718 On 20 Juli, 2012 13:15 CAB said,

Hallo Zusammen,
die Funktion von Thomas Kaegi läuft bestens.

Vielen Dank und ein schönes WE - bis dahin

Christian A. Buschhoff