Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
860to864
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
860to864
860to864
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

860to864: 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

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
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
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 :-?
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)
Anzeige
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))

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige