Pouvez-vous être plus explicite? Voici le texte de macro :
Sub OuvrirFichierDepuisAdresse
Dim oForm As Object
Dim oField As Object
Dim sChemin As String
Dim oDesktop As Object
Dim oURL As String
'--- 1. Récupérer le formulaire actif nommé "SubForm_Recettes"
oForm = ThisComponent.DrawPage.Forms.getByName("SubForm_Recettes")
If IsNull(oForm) Then
MsgBox "Formulaire ""SubForm_Recettes"" introuvable.", 48, "Erreur"
Exit Sub
End If
'--- 2. Lire la valeur du champ "Adresse"
On Error GoTo ChampInexistant
oField = oForm.getByName("Adresse")
sChemin = Trim(oField.Text) 'ou .Value selon le type du champ
If sChemin = "" Then
MsgBox "Le champ ""Adresse"" est vide.", 48, "Erreur"
Exit Sub
End If
'--- 3. Vérifier que le fichier existe
If Not FileExists(sChemin) Then
MsgBox "Fichier non trouvé : " & sChemin, 48, "Erreur"
Exit Sub
End If
'--- 4. Ouvrir le fichier avec l'application par défaut (Linux)
oDesktop = createUnoService("com.sun.star.frame.Desktop")
' Convertir le chemin système en URL (file:///)
oURL = ConvertToURL(sChemin)
oDesktop.loadComponentFromURL(oURL, "_blank", 0, Array())
Exit Sub
ChampInexistant:
MsgBox “Le champ ““Adresse”” est introuvable dans le formulaire.”, 48, “Erreur”
End Sub
'=================================================================
’ Fonction utilitaire : test d’existence d’un fichier
'=================================================================
Function FileExists(sPath As String) As Boolean
Dim oSimpleFileAccess As Object
oSimpleFileAccess = createUnoService(“com.sun.star.ucb.SimpleFileAccess”)
FileExists = oSimpleFileAccess.Exists(sPath)
End Function
J’ai affecté la macro à l’événement Bouton de la souris relâché :

et j’ai toujours le même message