von Ralf R » Mo, 20.09.2021 17:55
Hallo zusammen!
Bei Michael Dannenhöfer findet sich ein Makro, mithilfe dessen man aus der Position einer Zelle heraus auf den Zellnamen kommt.
Ich habe Umgekehrtes vor. Das User ist aufgerufen einen Spaltennamen einzugeben und das Makro arbeitet mit der Positionsnummer weiter. Meine umständliche kreative Lösung sieht so aus:
Code: Alles auswählen
Sub Spaltenposition
osheet = ThisComponent.CurrentController.ActiveSheet
osheet = thisComponent.sheets.getByName(osheet.name)
eing = InputBox("Bitte geben Sie den Buchstaben der Spalte an (groß oder klein), mit der" & chr(13)_
& "weitergearbeitet werden soll! (Bei Nichteingabe wird der Vorgang beendet)!",, )
On Error GoTo Schluss:
oSpalte1 = oSheet.getColumns().getByName(eing)
cellname = eing + 5
oCell_1 = osheet.getCellRangeByName(cellname)
ThisComponent.currentController.select( oCell_1 )
oCell_1 = ThisComponent.getCurrentSelection().getCellAddress()
pos = oCell_1.Column
msgbox "Position: " & pos
Exit Sub
Schluss:
msgbox "Sie haben keine gültige Spaltenbezeichnung gewählt. Der Vorgang wird abgebrochen."
End Sub
Die Frage ist: gibt es vielleicht auch einen direkten Weg um auf die Spaltenposition zu kommen – also ohne erst eine Zelle zu selektieren?
Danke vorab,
Ralf
Hallo zusammen!
Bei Michael Dannenhöfer findet sich ein Makro, mithilfe dessen man aus der Position einer Zelle heraus auf den Zellnamen kommt.
Ich habe Umgekehrtes vor. Das User ist aufgerufen einen Spaltennamen einzugeben und das Makro arbeitet mit der Positionsnummer weiter. Meine umständliche kreative Lösung sieht so aus:
[code]
Sub Spaltenposition
osheet = ThisComponent.CurrentController.ActiveSheet
osheet = thisComponent.sheets.getByName(osheet.name)
eing = InputBox("Bitte geben Sie den Buchstaben der Spalte an (groß oder klein), mit der" & chr(13)_
& "weitergearbeitet werden soll! (Bei Nichteingabe wird der Vorgang beendet)!",, )
On Error GoTo Schluss:
oSpalte1 = oSheet.getColumns().getByName(eing)
cellname = eing + 5
oCell_1 = osheet.getCellRangeByName(cellname)
ThisComponent.currentController.select( oCell_1 )
oCell_1 = ThisComponent.getCurrentSelection().getCellAddress()
pos = oCell_1.Column
msgbox "Position: " & pos
Exit Sub
Schluss:
msgbox "Sie haben keine gültige Spaltenbezeichnung gewählt. Der Vorgang wird abgebrochen."
End Sub
[/code]
Die Frage ist: gibt es vielleicht auch einen direkten Weg um auf die Spaltenposition zu kommen – also ohne erst eine Zelle zu selektieren?
Danke vorab,
Ralf