Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

860to864: Buchstaben hochzählen, über 26 hinaus

Forumthread: Buchstaben hochzählen, über 26 hinaus

Buchstaben hochzählen, über 26 hinaus
08.04.2007 22:30:37
uli
Hallo,
weiß vielleicht jemand wie ich Buchstaben hochzählen kann?
mit CHR(i + 64) hab ich schon mein Glück versucht. Da ich allerdings mehr als 26 Buchstaben verwenden will, klappt das hiermit nicht mehr. Das weitere Hochzählen soll dann aa, ab, ac und so weiter darstellen
Gruß Uli
Anzeige

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Buchstaben hochzählen, über 26 hinaus
08.04.2007 22:45:49
Ramses
Hallo
"...Das weitere Hochzählen soll dann aa, ab, ac und so weiter darstellen..."
Über einen kleinen Umweg,... aber dafür nur maximal bis 256

Sub Test()
Dim X as Integer
X = 42
msgbox "Spaltenbezeichnung: " & left(columns(x).address(0,0),instr(1, columns(x).address(0,0),": _
")-1)
End Sub
Gruss Rainer
Anzeige
AW: Buchstaben hochzählen, über 26 hinaus
08.04.2007 23:08:48
MichaV
Hi,
das hier geht bis maximal 702:


Option Explicit
Sub bla()
Dim i As Integer
For i = 1 To 676 + 26
    Debug.Print IIf(i - 1 > 25, Chr(Int((i - 1) / 26) + 64), "") & Chr((i - 1) Mod 26 + 1 + 64)
Next i
End Sub


Anzeige
AW: Buchstaben hochzählen, über 26 hinaus
08.04.2007 23:19:00
Ramses
Hallo
Wow,.... :-)
Nicht traurig sein, aber lass das mal unter E2007 laufen :-)))

Sub Test()
Dim i As Long
For i = 1 To Columns.Count
Cells(i, 1) = "Spaltenbezeichnung: " & Left(Columns(i).Address(0, 0), InStr(1, Columns(i). _
Address(0, 0), ":") - 1)
Next i
End Sub
Gruss Rainer
Anzeige
AW: Buchstaben hochzählen, über 26 hinaus
08.04.2007 23:24:18
MichaV
Hi Rainer,
was soll ich mit XL2007? Mir reichen 256 Spalten.
Was mich interessiert: wie kriegt man das Problem ohne irgendeine Obergrenze gelöst?
Gruß- Micha
AW: Buchstaben hochzählen, über 26 hinaus
08.04.2007 23:49:00
uli
Vielen Dank an euch alle. Ich werde die Lösung von Rainer nehmen. 256 Zeichen reichen mir und der Code ist für mich auch einfacher zu verstehen.
Gruß Uli
Anzeige
...und hier noch als Formel - allerdings mit...
09.04.2007 01:54:53
Luc:-?
...Obergrenze, Micha...

=WENN((A65>26^2+26)*(REST(GANZZAHL((A65-1)/(26^2+26))-1;26)+1)=0;"";
ZEICHEN((A65>26^2+26)*(REST(GANZZAHL((A65-1)/(26^2+26))-1;26)+1)+64))&
WENN((A65>26)*(REST(GANZZAHL((A65-1)/26)-1;26)+1)=0;"";
ZEICHEN((A65>26)*(REST(GANZZAHL((A65-1)/26)-1;26)+1)+64))&ZEICHEN(REST(A65-1;26)+1+64) 

...mit einer beliebigen Zahl von 1...18278 in A65.
An der Lösung kann man sicher erkennen, worauf es bei ohne Obergrenze hinausläuft!
Gruß und Frohe Ostern Micha, Rainer & Uli
Luc :-?
Anzeige
AW: ...und hier noch als Formel - allerdings mit..
09.04.2007 09:16:33
MichaV
Hi Luc,
das sieht mir ja ganz wie "meine" VBA- Lösung aus, nur etwas erweitert.
Dir auch ein God Påske!
Gruß- Micha
PS: ...und wie kommst Du darauf, daß ich eine neue Email- Adresse habe ;o)
AW: ...und hier noch als Formel - allerdings mit..
13.04.2007 00:15:56
MichaV
Moin,
das hat mir keine Ruhe gelassen. Hier eine Lösung, die nur durch die technische Obergrenze von VBA begrenzt ist:


Option Explicit
Sub bla()
Dim i As Currency
i = 922337203685477#
Debug.Print Buchstabenzählen(i)
End Sub
Function Buchstabenzählen(ByVal z As CurrencyAs String
Dim strErg As String
Dim t As Integer
z = z - 1
If z = -1 Then
    strErg = ""
Else
    t = z - Int(z / 26) * 26
    strErg = Chr(t + 65)
    z = Int(z / 26)
    If z <> 0 Then strErg = Buchstabenzählen(z) & strErg
End If
Buchstabenzählen = strErg
End Function


Das Ergebnis ist ein mageres FMVSMVJNSRU
Die Funktion ist eine fast 1:1- Umsetzung von http://www.excelformeln.de/formeln.html?welcher=262
Gruß- Micha
Anzeige
AW: Buchstaben hochzählen, über 26 hinaus
08.04.2007 23:43:43
uli
Hallo Rainer,
256 reicht dicke. Ich denke ich werde es darüber machen. Vielen Dank für die schnelle Hilfe.
Gruß Uli
AW: Buchstaben hochzählen, über 26 hinaus
12.04.2007 14:54:00
max
Oder ganz einfach mit Funktion aber nur bis 256:
A2:=26
B2:=LINKS(ADRESSE(1;A2;4);1+(A2>26))
;
Anzeige
Anzeige

Infobox / Tutorial

Buchstaben in Excel hochzählen über 26 hinaus


Schritt-für-Schritt-Anleitung

Um Buchstaben in Excel hochzuzählen, insbesondere über 26 hinaus, kannst du VBA verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu:

    • Klicke im Menü auf Einfügen > Modul.
  3. Kopiere den folgenden Code in das Modul:

    Function Buchstabenzählen(ByVal z As Long) As String
       Dim strErg As String
       Dim t As Long
       z = z - 1
       If z = -1 Then
           strErg = ""
       Else
           t = z - Int(z / 26) * 26
           strErg = Chr(t + 65)
           z = Int(z / 26)
           If z <> 0 Then strErg = Buchstabenzählen(z) & strErg
       End If
       Buchstabenzählen = strErg
    End Function
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Verwende die Funktion in einer Zelle, z.B. =Buchstabenzählen(27) für "AA".

Damit kannst du Buchstaben hochzählen, auch über 26 hinaus, und so z.B. "AA", "AB", "AC" usw. generieren.


Häufige Fehler und Lösungen

  • Fehler: „Fehler beim Kompilieren: Syntaxfehler“

    • Lösung: Überprüfe, ob du den Code korrekt kopiert hast. Achte auf Anführungszeichen und Klammern.
  • Fehler: „#NAME?“-Fehler in Excel

    • Lösung: Stelle sicher, dass die Funktion im richtigen Modul gespeichert wurde und dass du Excel neu gestartet hast.

Alternative Methoden

Falls du kein VBA verwenden möchtest, gibt es eine Formel, die das Hochzählen der Buchstaben bis zu einer Obergrenze von 256 ermöglicht:

=WENN((A2>26^2+26)*(REST(GANZZAHL((A2-1)/(26^2+26))-1;26)+1)=0;"";ZEICHEN((A2>26^2+26)*(REST(GANZZAHL((A2-1)/(26^2+26))-1;26)+1)+64))&WENN((A2>26)*(REST(GANZZAHL((A2-1)/26)-1;26)+1)=0;"";ZEICHEN((A2>26)*(REST(GANZZAHL((A2-1)/26)-1;26)+1)+64))&ZEICHEN(REST(A2-1;26)+1+64)

Diese Formel ermöglicht dir, Buchstaben wie „AA“, „AB“, „AC“ bis zu einer Obergrenze von 256 zu generieren.


Praktische Beispiele

  1. Buchstaben hochzählen ab 1:

    • In Zelle A1: 1
    • In Zelle B1: =Buchstabenzählen(A1) → Ergebnis: „A“
  2. Weiterzählen bis 30:

    • In Zelle A2: 30
    • In Zelle B2: =Buchstabenzählen(A2) → Ergebnis: „AD“
  3. Verwendung der Formel:

    • In Zelle A3: 10
    • In Zelle B3: `=WENN((A3>26^2+26)(REST(GANZZAHL((A3-1)/(26^2+26))-1;26)+1)=0;"";ZEICHEN((A3>26^2+26)(REST(GANZZAHL((A3-1)/(26^2+26))-1;26)+1)+64))&WENN((A3>26)(REST(GANZZAHL((A3-1)/26)-1;26)+1)=0;"";ZEICHEN((A3>26)(REST(GANZZAHL((A3-1)/26)-1;26)+1)+64))&ZEICHEN(REST(A3-1;26)+1+64) → Ergebnis: „J“

Tipps für Profis

  • VBA optimieren: Du kannst die Buchstabenzählung in eine benutzerdefinierte Funktion umwandeln, die du in anderen Projekten wiederverwenden kannst.
  • Excel alphabet runterziehen: Wenn du das alphabetische Hochzählen in einer Spalte benötigst, ziehe die Zelle mit der Formel nach unten, um die Buchstaben automatisch weiterzählen zu lassen.
  • Längstes Wort ohne doppelte Buchstaben: Experimentiere mit den Buchstaben in Kombinationen, um das längste Wort ohne doppelte Buchstaben zu finden.

FAQ: Häufige Fragen

1. Kann ich die Funktion auch in Excel Online verwenden?
Ja, VBA-Funktionen sind derzeit in Excel Online nicht verfügbar. Du kannst jedoch die Formel-Alternative nutzen.

2. Wie kann ich die Buchstaben hochzählen, ohne VBA zu verwenden?
Verwende die bereitgestellte Formel, die in Excel direkt eingegeben werden kann.

3. Gibt es eine Obergrenze für die Buchstabenzählung?
Die Obergrenze hängt von der verwendeten Methode ab. Mit VBA kannst du theoretisch unbegrenzt zählen, während die Formel eine Obergrenze von 256 hat.

4. Wie kann ich die Buchstaben hochzählen, um das Excel-Format für Spaltenbezeichnungen zu nutzen?
Verwende die VBA-Funktion, um die Spaltenbezeichnungen in einem Format wie „AA“, „AB“, „AC“ zu generieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige