Seite 1 von 1

Wie kann ich von Python aus Basic-Routinen aufrufen?

Verfasst: Di, 11.09.2018 07:37
von StePfl
Hallo zusammen,

ich versuche gerade eine recht umfangreiche in Basic realisierte Auswertung(Calc) von Basic auf Python zu übertragen.
Grund: Interesse/Spieltrieb + deutlich höhere Verarbeitungsgeschwindigkeit bei großen Datenmengen (zumindest mein Eindruck)

Leider finde ich nur sehr spärliche Informationen, wie ich von Python aus LibreOffice-calc steuern kann.
Da ich dazu aber gut funktionierende BasicRoutinen geschrieben hatte würde ich diese gerne weiter nutzen - oder ....

Beispiel: (Aufgabe: Emitteln des in sich geschlossenen Datenbereichs innerhalb eines Scheets)

Code: Alles auswählen

global Function getRangeOfClosedAreaByStartCell(optional oStartCell)
Dim hlp
Dim locSheet, locCurs
	if ismissing(oStartCell) then	
		locCell = ThisComponent.CurrentSelection
	else
		locCell = oStartCell
	endif
	hlp = locCell.AbsoluteName
	locSheet = ThisComponent.sheets(locCell.RangeAddress.sheet)
	GetRangeOfUserdAerea = locCell

	locCurs = locSheet.createCursorByRange(locCell)
	locCurs.collapseToCurrentRegion()
	getRangeOfClosedAreaByStartCell = locCurs
end function
1. Frage: kann ich diese Funktion auch von Python aus aufrufen?

Besser wäre natürlich, diese mit Python zu realiseren:
2. Frage: wie kann ich z.B. Cursormanipulationen von Python aus ausführen?
2b.: wo finde ich weiterführende Informationen zu 2.

herzlichen Dank
StePfl

Re: Wie kann ich von Python aus Basic-Routinen aufrufen?

Verfasst: Di, 11.09.2018 09:47
von nikki

Re: Wie kann ich von Python aus Basic-Routinen aufrufen?

Verfasst: Di, 11.09.2018 10:13
von StePfl
nikki hat geschrieben:
Di, 11.09.2018 09:47
Siehe https://de.openoffice.info/viewtopic.php?f=25&t=66819
Danke - diese Info kannte ich schon - nur hilft es mir bei dem speziellen Problem nicht weiter...

Wichtig wäre für mich aber ein Lösungsansatz zu Frage 1 + 2 ....