Umsteigen auf OpenOffice: Von VBA zu OpenOffice-Basic

Strukturen (structs)

Eine große Anzahl von Daten wird in so genannten Strukturen (structs) gespeichert. Im Beispiel loadComponentFromURL lässt sich dies anschaulich zeigen:

Sub API1

Dim Obj As Object
Dim objDok As Object
Dim strURL As String
Dim docArgs(1) As New com.sun.star.beans.PropertyValue

Obj = createUnoService("com.sun.star.frame.Desktop")

strURL = "C:\xyz\Versuch.xls"
strURL = ConvertToUrl(strURL)
docArgs(0).Name = "FilterName"
docArgs(0).Value = "MS Excel"
docArgs(1).Name = "AsTemplate"
docArgs(1).Value = True

ObjDok = Obj.loadComponentFromURL(strURL, "_blank", 0, docArgs())

End Sub

Ein Datenfeld wird über die beiden Wertepaare Name und Value gefüllt – dieses Array stellt die Struktur zum Öffnen des Dokuments dar. An einem anderen Beispiel soll der Begriff „Struktur“ näher erläutert werden: Wir weisen einer Zelle ein benutzerdefiniertes Zahlenformat (beispielsweise ein Datumsformat) mit einer Long-Variablen zu:

objZelle.NumberFormat = lngNumberFormatId

Zuvor muss jedoch die Long-Variable erzeugt werden:

strNummerFormat = "TT.MM.JJJJ"
lngNumberFormatId = objNummerFormat.queryKey(strNummerFormat, objLocalSettings, True)