Hallo,
wie platziere ich den Cursor in Calc über ein Basic Makro und wo gibt es dazu Dokumentationen.
Danke
hier mal wo ich bin:
sub test_CursorPos (Pos as string)
dim Mappe as object
dim Blatt as object
dim Bereich as object
dim BlattName as string
Mappe = ThisComponent
BlattName = Mappe.CurrentController.ActiveSheet.Name
Blatt = Mappe.Sheets.getByName(BlattName)
Bereich = Blatt.getCellRangeByName(Pos)
'ab hier ist mein latein am ende
Bereich.GotoCell ??
Bereich activate ??
end sub
[gelöst]Cursor über Makro positionieren
Moderator: Moderatoren
-
- **
- Beiträge: 32
- Registriert: Mo, 14.12.2020 10:02
[gelöst]Cursor über Makro positionieren
Zuletzt geändert von dinner4one am So, 14.03.2021 12:08, insgesamt 1-mal geändert.
Re: Cursor über Makro positionieren
Hallo,
Ich verstehe noch nicht so richtig, was du vorhast.
In Calc läuftdas etwas anders. Du musst keinen Bereich aktivieren, um mit ihm etwas machen zu können.
Also: Was hast du vor?
Ich verstehe noch nicht so richtig, was du vorhast.
erinnert mich an meine Denkweise von MSOffice VBA.Bereich activate
In Calc läuftdas etwas anders. Du musst keinen Bereich aktivieren, um mit ihm etwas machen zu können.
Also: Was hast du vor?
Gruß,
mikeleb
mikeleb
-
- **
- Beiträge: 32
- Registriert: Mo, 14.12.2020 10:02
Re: Cursor über Makro positionieren
@mikeleb
Fragestellung im Betreff, stimmt
@gast
danke guter Link
Fragestellung im Betreff, stimmt
@gast
danke guter Link
-
- **
- Beiträge: 32
- Registriert: Mo, 14.12.2020 10:02
Re: Cursor über Makro positionieren
...so gehts:
Code: Alles auswählen
'###############################################################
function _BlattName as string
dim Mappe as object
dim Methoden as object
Mappe = ThisComponent
Methoden = Mappe.CurrentController
_BlattName = Methoden.ActiveSheet.Name
end function
'###############################################################
sub _CursorPos (Pos as string)
dim Mappe as object
dim Methoden as object
dim Blatt as object
dim Bereich as object
Mappe = ThisComponent
Methoden = Mappe.CurrentController
Blatt = Mappe.Sheets.getByName(_BlattName)
Bereich = Blatt.getCellRangeByName(Pos)
Methoden.Select(Bereich)
end sub
Re: Cursor über Makro positionieren
das selektiert einen Zellreich, aber positioniert keinen Cursor, wonach doch eigentlich gefragt war....so gehts:
"mikeleb" der sich genau an dieser Stelle wohl unsicher (wie ich auch) und der augenscheinliche Grund das "mikeleb" fragte ist das das Selektieren eines Zellbereichs leicht machbar ist, das Positionieren des Cursors in Calc hingegen nicht unbedingt.
Da man Letzteres auch kaum braucht habe ich dafür nicht einmal einen 'nativen' Code greifbar, sondern würde mit dispatcher arbeiten. Das Folgende positioniert den sichtbaren Cursor ans Ende des Textes in Zelle A1 des aktiven Tabellenblatts:
Code: Alles auswählen
Sub Main
akt_blatt = ThisComponent.CurrentController.ActiveSheet
akt_zelle = akt_blatt.getCellRangeByName("A1")
ThisComponent.CurrentController.Select(akt_zelle)
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(document, ".uno:SetInputMode", "", 0, Array())
End Sub
http://www.dannenhoefer.de/faqstarbasic/cursor.html
http://www.dannenhoefer.de/faqstarbasic ... sorum.html
Gruß
Stephan