Hilfe für Collabora Office 23.05
Instanziiert einen Uno-Dienst mit dem ProcessServiceManager.
CreateUnoService(serviceName As String) As Object
Eine Liste der verfügbaren Dienste finden Sie auf der Referenzseite des Moduls com::sun::star.
Das folgende Beispiel erstellt die Funktion FileExists, die den Dienst com.sun.star.ucb.SimpleFileAccess verwendet, um zu testen, ob ein bestimmter Pfad eine vorhandene Datei ist.
Function FileExists(sPath as String) As Boolean
Dim svcSFA As Object
Set svcSFA = CreateUnoService("com.sun.star.ucb.SimpleFileAccess")
Dim bExists As Boolean : bExists = svcSFA.exists(sPath)
Dim bIsFolder As Boolean : bIsFolder = svcSFA.IsFolder(sPath)
FileExists = bExists And Not bIsFolder
End Function ' FileExists
UNO-Dienste verfügen über eine umfangreiche Online-Dokumentation auf der Website api.libreoffice.org. Besuchen Sie die Referenzseite SimpleFileAccess-Dienst, um mehr über die Methoden des bereitgestellten Diensts, der im obigen Beispiel verwendet wird, zu erfahren.
Der folgende Code verwendet den Dienst com.sun.star.ui.dialogs.FilePicker, um einen Dialog zum Öffnen einer Datei anzuzeigen:
Sub Main
fName = FileOpenDialog ("Bitte wählen Sie eine Datei")
Print "Ausgewählte Datei: "+fName
End Sub
Function FileOpenDialog(title As String) As String
res = com.sun.star.ui.dialogs.ExecutableDialogResults
filepicker = createUnoService("com.sun.star.ui.dialogs.FilePicker")
filepicker.Title = title
If res.OK = filepicker.execute() Then
files = filepicker.getSelectedFiles()
FileOpenDialog=files(0)
EndIf
End Function ' Main