Aide LibreOfficeDev 25.8
Crée une instance d'un service Uno à l'aide de ProcessServiceManager.
CreateUnoService(serviceName As String) As Object
Pour une liste des services disponibles, visitez la page de référence com::sun::star Module.
L'exemple ci-dessous crée la fonction FileExists qui utilise le service com.sun.star.ucb.SimpleFileAccess pour tester si un chemin donné est un fichier existant.
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
Les services UNO disposent d'une documentation en ligne complète sur le site Web api.libreoffice.org. Visitez la page de référence SimpleFileAccess Service pour en savoir plus sur les méthodes fournies par le service utilisé dans l'exemple ci-dessus.
The following code uses the service com.sun.star.ui.dialogs.FilePicker to show an open file dialog:
Sub Main
fName = FileOpenDialog ("Veuillez sélectionner un fichier")
Print "fichier sélectionné : "+Nomf
End Sub
Function FileOpenDialog(title As String) As String
res = com.sun.star.ui.dialogs.ExecutableDialogResults
filepicker = CreateUnoService("com.sun.star.ui.dialogs.FilePicker")
With filepicker
.Title = title
.MultiSelectionMode = True
.appendFilter("Calc docs","*.ods;*.csv;*.123")
.appendFilter("Writer or Base docs","*.odt;*.odb")
.appendFilter("All files","*.*")
If res.OK = .execute() Then
files = .getSelectedFiles()
FileOpenDialog=files(0)
EndIf
End With
End Function ' FileOpenDialog