Erreur de débutant sur macro

bonjour,
je seche sur une macro qui a vocation à exporter une seule feuille d’un document en pdf…
il me retourne une erreur de variable non définié sur : oPDFExport.setSourceDocument(ThisComponent)

quelqu’un a une idée ?

merci

le code :

Sub ExportToPDF()
    Dim oSheet As Object
    Dim oPDFExport As Object
    Dim sFileName As String
    Dim sSheetName As String
    
    

    ' Nom de la feuille à exporter

    sSheetName = "facture"

    ' Obtenir la feuille par nom
    oSheet = ThisComponent.getSheets().getByName(sSheetName)

    If Not IsNull(oSheet) Then
        ' Obtenir le nom du fichier PDF de sortie
        sFileName = "/home/seb/factures/facture.pdf"

        ' Obtenir le gestionnaire d'exportation PDF
        oPDFExport = createUnoService("com.sun.star.drawing.PDFExport")

        ' Exporter la première page de la feuille en PDF
        oPDFExport.setSourceDocument(ThisComponent)
        oPDFExport.setFilterData("PageRange=1-1")
        oPDFExport.export(sFileName, Array())

        ' Fermer le gestionnaire d'exportation PDF
        oPDFExport.dispose()

        ' Afficher un message de confirmation
        MsgBox "Exportation vers PDF terminée.", 64, "Exportation PDF"
    Else
        MsgBox "La feuille '" & sSheetName & "' n'a pas été trouvée.", 16, "Erreur"
    End If
End Sub

Je ne vois pas le service.

pdf = createUnoService("com.sun.star.drawing.PDFExport")
MsgBox IsNull(pdf)

Où l’avez-vous trouvé ?

Bonjour,
apparemment, la méthode com.sun.star.drawing.PDFExport n’est pas la bonne, la variable reste à l’état Null.
Selon la source où l’avez trouvée, est-elle censée fonctionner avec un LibreOffice récent ?

Voir cet exemple sur le wiki LibreOffice Export a Calc sheet as PDF - The Document Foundation Wiki

Pas la peine de réinventer l’eau chaude avec cette extension :
https://forum.openoffice.org/fr/forum/viewtopic.php?t=32339

Bonjour,
Valioud, j’ai du mal à comprendre pourquoi installer une extension quand on peut le faire en natif et ce d’autant que cette extension n’est pas référencée sur le site libreoffice. Mais on peut vouloir le faire par macro ! Why not ?
Cela dit, le fichier ci-joint fait le job. Il n’est pas de mon fait (je ne me rappelle pas où je l’avais trouvé) et ne vient pas non plus des exemples de ma bible à programmer sous libreoffice (il n’y a pas les déclarations de variables).
exportPdf.ods (12.4 KB)
Bon courage,
Claude

Parce qu’une extension ne nécessite aucune maîtrise de programmation.
Mais bon, l’auteur n’ayant jamais daigner revenir donner suite…

Alors je ne dois avoir rien compris à la question. Quand je dis en natif, c’est dans le logiciel : menu fichier,exporter en pdf et choisir Selection/feuille(s) selectionnées.