Exporter uniquement une feuille du classeur en PDF

Bonjour,

Je cherche à exporter une feuille de classeur en PDF dans le répertoire courant. Ne connaissant pas le langage OOo Basic, j’ai donc enregistré une macro censée faire le taff. Or, la macro ne prend pas en compte l’option qui permet d’enregistrer uniquement la feuille active.

Auriez-vous un code ou une astuce à me proposer ?

Bonjour

Hors macro tu peux définir la zone d’impression de la (les) feuille à ne pas exporter : FormatZone d'impressionÉditer- aucun(e) -

Ou par macro, par exemple pour n’exporter que la feuille courante :

sub ExportPdfSelection

dim propFich(2) as new com.sun.star.beans.PropertyValue
dim filterProps(0) as new com.sun.star.beans.PropertyValue
dim adresseDoc  as string

filterProps(0).Name = "Selection"
filterProps(0).Value = thisComponent.currentController.activeSheet

propFich(0).Name = "FilterName"
propFich(0).Value = "calc_pdf_Export"
propFich(1).Name = "FilterData"
propFich(1).Value = filterProps()

adresseDoc = convertToURL("C:\test.pdf")
thiscomponent.storeToURL(adresseDoc, propfich())
end sub

Cordialement

hello, merci pour ta réponse, mais la macro que tu me proposes provoque une erreur :
“Une exception s’est produite :
Type: com.sun.star.io.IOException
Message: SfxBaseModel::impl_store <file:///./test.pdf> failed: 0x507.”

J’aurais peut-être dû préciser que le nom/chemin du fichier pdf destination devait être adapté…

J’en profite pour ajouter que, naturellement, la zone d’impression de la feuille sera prise en compte.

Non quand même, j’ai mis un chemin relatif “./test.pdf” (Je suis sous Ubuntu)

As-tu vérifié après conversion que tu as bien un url valide ?

C’est la conversion de l’URL qui ne fonctionne pas. Je vois pas trop pourquoi

Relatif à quoi ? Dans LibreOffice le chemin par défaut est “récupérable” par qqchose comme :

sInstall  = CreateUnoService("com.sun.star.util.PathSettings")
sRepDoc = sInstall.Work

Après, c’est à toi de bâtir une chaîne en fonction du besoin…

Finalement, convertToUrl ne fonctionne qu’avec des chemins absolus et non relatifs (relatifs au chemin du fichier original)
Merci pour l’astuce du chemin par défaut, ça me permettra de faire tourner les macros quel que soit l’OS.

Il existe une extension toute prête qu’il suffit d’installer :

https://forum.openoffice.org/fr/forum/viewtopic.php?f=18&t=32339