karakan87
Goto Top

Excel - Buchstaben um x Buchstaben erhöhen

Zahlen erhöhen ist ja kein Problem, wenn ich z.B. in die Zellen 1,6,11,16 eingebe und die Zellen markiere und runterziehe macht er automatisch weiter mit 21,26,31...

So dass möchte ich aber mit Buschtaben.

Ich habe in meinen Zellen E3, J3, O3... immer Überschriften (Buchstaben erhöhen sich immer um 5 Buchstaben), welche ich ganz links in meinem Dokument anzeigen möchte.

Dies mach ich mit einem Verweis in dem ich meinen Zellen den Inhalt mit =E3 ... usw. gebe.

Ich möchte aber dass er die Zellen automatisch füllt wenn ich diese runterziehe, also dann da rein macht J3,O3,T3,...

Wie mach ich das, wobei man Bedenken muss, dass die Spalten am Ende des Alphabets mit AA,AB,AC...AZ und dann BA, BB,BC,... weitermachen

Es ist schwer mein Problem zu erklären, ich hab mir Mühe gegeben, hoffentlich versteht ihr was ich meine.

Content-ID: 116714

Url: https://administrator.de/contentid/116714

Ausgedruckt am: 23.11.2024 um 02:11 Uhr

WiSch
WiSch 25.05.2009 um 14:07:34 Uhr
Goto Top
Ohne das jetzt direkt als Formel anzubieten, kann über die Funktion CODE(E3) der Zeichencode für das erste Zeichen ermittelt werden. Mit diesem Wert kann man rechnen und das Ergebnis mit ZEICHEN(74) wieder als Buchstaben ausgeben.

Das muß dann natürlich so aufgebaut werden, das entsprechend berücksichtigt wird, wenn es mit AA, AB, .... weiter geht.

//EDIT:

Also ich habe das mal kurz in einzelnen Formeln probiert und das kann ja als Basis dienen. Sieht so aus:

Spalte A Spalte B Spalte C Spalte D
a =CODE(GROSS(A1)) =WENN(B1>90;ZEICHEN(64+AUFRUNDEN((B1-90)/26;0));"") =ZEICHEN(WENN(B1>90;B1-AUFRUNDEN((B1-90)/26;0)*26;B1))
=B1+5 =WENN(B2>90;ZEICHEN(64+AUFRUNDEN((B2-90)/26;0));"") =ZEICHEN(WENN(B2>90;B2-AUFRUNDEN((B2-90)/26;0)*26;B2))
=B2+5 =WENN(B3>90;ZEICHEN(64+AUFRUNDEN((B3-90)/26;0));"") =ZEICHEN(WENN(B3>90;B3-AUFRUNDEN((B3-90)/26;0)*26;B3))

Ich setze den gegebenen Buchstaben immer auf GROSS, damit ich im richtigen Wertebereich von 65-90 bin.
Dann frage ich ab, ob ich den Wertebereich überschritten habe und ermittle, um ein wievielfaches dies der Fall ist.
Auf dieser Basis entscheide ich dann, ob und welcher Wert korrekt ist...

Ist so auf die Schnelle gemacht, aber ich hoffe es hilft weiter...

Viel Erfolg.
Karakan87
Karakan87 25.05.2009 um 14:46:08 Uhr
Goto Top
Super thx, darauf muss man erstmal kommen ;)

Find die Lösung gut, setze es mal bei mir um.
bastla
bastla 25.05.2009 um 14:57:01 Uhr
Goto Top
Hallo Karakan87!

Unter der Annahme, dass der erste Bezug in Zelle A5 stehen soll, könntest Du versuchsweise folgende Formel verwenden (und dann nach unten kopieren):
=INDIREKT(WENN(((ZEILE(A6)-ZEILE($A$5))*5+SPALTE($E$3))>26;ZEICHEN(GANZZAHL((ZEILE(A6)-ZEILE($A$5))*5+SPALTE($E$3)/26)+64);"") &ZEICHEN(REST((ZEILE(A6)-ZEILE($A$5))*5+SPALTE($E$3);26) + 64)&ZEILE($E$3))
Soll diese Formel erstmals etwa in A7 verwendet werden, müsstest Du jedes "A5" bzw "$A$5" auf "A7" bzw "$A$7" anpassen.

Analog dazu ist auch jedes "$E$3" zu ändern, falls die Position der ersten Überschrift verschoben würde.

Schließlich ist noch der Spaltenabstand (5) an 3 Stellen in der Formel (jeweils als Multiplikator) festgeschrieben und müsste angepasst werden, falls sich der Abstand ändern sollte.

Grüße
bastla

[Edit] Da habe ich dann ja ziemlich langsam gebastelt ... [/Edit]
Karakan87
Karakan87 25.05.2009 um 15:16:40 Uhr
Goto Top
Danke Bastler deine Lösung ist auch richtig gut musste erst mal genau schauen was da überhaupt passiert, sieht richtig kompliziert aus.

Ich probiers damit auch mal aus.
Karakan87
Karakan87 25.05.2009 um 15:19:51 Uhr
Goto Top
bastla - deine Lösung funktioniert nur von A bis Z sobald es weiter geht mit AA,AB.... klappts net mehr face-sad
bastla
bastla 25.05.2009 um 16:50:47 Uhr
Goto Top
Hallo Karakan87!

Sorry - beim Umstellen von der ursprünglichen Version mit Verwendung einer Hilfsspalte auf die "All in"-Variante ist eine Klammer an der falschen Stelle gelandet - sollte eigentlich so aussehen:
=INDIREKT(WENN(((ZEILE(A5)-ZEILE($A$5))*5+SPALTE($E$3))>26;ZEICHEN(GANZZAHL((ZEILE(A5)-ZEILE($A$5))*5+SPALTE($E$3))/26+64);"") &ZEICHEN(REST((ZEILE(A5)-ZEILE($A$5))*5+SPALTE($E$3);26) + 64)&ZEILE($E$3))
Grüße
bastla