Hallo liebe Experten,
kürzlich habe ich hier https://de.openoffice.info/viewtopic.php?t=77152 eine Function von Karolus entdeckt, mit deren Hilfe der Spalten-Index (z.B. 2) in den Spalten-Namen (z.B. "C") umgewandelt werden kann. Nun hätte ich gerne eine Lösung für den umgekehrten Weg, also wie ich vom Spalten-Namen zum Spalten-Index gelangen kann. Ich habe mir schon die Finger wund gegoogelt aber nirgendwo etwas Passendes gefunden.
Meine Ausstattung:
Windows 11,
LibreOffice 24.2
Vorab vielen Dank für Eure Unterstützug und liebe Grüße
vom Martin
🙏 Bitte helfen Sie uns das LibreOffice Forum zu erhalten. 🙏
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🍀 Wir hoffen auf Ihre Unterstützung - vielen Dank!🍀
>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗
Calc-Tabelle: Spalten-NAMEN umwandeln in Spalten-INDEX (z.B. "C" in 2)
Re: Calc-Tabelle: Spalten-NAMEN umwandeln in Spalten-INDEX (z.B. "C" in 2)
Hallo
oder brav als Basic-Code:
und mit nativen python-mitteln ohne den Umweg über die LO-API:
Code: Alles auswählen
doc = XSCRIPTCONTEXT.getDocument()
address = doc.Sheets[0].Columns["ABZ"].RangeAddress
print(address.StartColumn)
Code: Alles auswählen
Sub Main
print col_index("ABC")
End Sub
function col_index( col_name )
sheet = thisComponent.Sheets(0)
column = sheet.Columns.getByName( col_name )
address = column.RangeAddress
col_index = address.StartColumn
end function
Code: Alles auswählen
from string import ascii_uppercase as alphabet
alphabet = f"_{alphabet}"
def name2index( name ):
name = reversed(name.upper())
return sum(alphabet.index(char) * 26**exponent
for exponent, char in enumerate(name)) - 1
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)
Re: Calc-Tabelle: Spalten-NAMEN umwandeln in Spalten-INDEX (z.B. "C" in 2)
Hallo Karolus,
großartig! Vielen Dank für die schnelle und ausführliche Antwort; das hilft mir nicht nur bei meinem momentanen Problem weiter sondern gibt mir auch Anregung für weitere Nachforschungen.
Vielen Dank und liebe Grüße
vom Martin
großartig! Vielen Dank für die schnelle und ausführliche Antwort; das hilft mir nicht nur bei meinem momentanen Problem weiter sondern gibt mir auch Anregung für weitere Nachforschungen.
Vielen Dank und liebe Grüße
vom Martin
An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:
Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.