XL 2016 Impression pdf d'une feuille de calcul...

Axos

XLDnaute Nouveau
Bonjour à tous,

Je souhaite imprimer en .pdf (via un bouton dédié dans mon userform) une feuille de calcul (appelée CONFIGURATION) qui n'est pas la feuille de calcul active.
J'ai saisi le code ci dessous :

Private Sub Boutonimprimer_click()

'Impression de la feuille de données en .pdf à l'activation du bouton imprimer
Sheets("CONFIGURATION").ExportAsFixedFormat Type:=xlTypePDF, Filename:="Paramètres_établissement.pdf", Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True

End Sub

Cependant, Excel ne veut pas exécuter ce code le considérant buggé... Quelqu'un peut-il me dire où est l'erreur et m'aider à la résoudre? J'avoue ne pas la voir...

D'avance, je vous remercie de vos réponses.

Axos.
 

Phil69970

XLDnaute Barbatruc
Le fil
@Axos

Voici ton fichier
*Il faut que la feuille configuration soit visible puis après on la cache .....
*Le bouton imprime est mal noté car en fait il exporte la feuille configuration en pdf, j'ai rajouté la fonction d’impression
*Dans le cas ou le fichier existe faut-il lancer l'impression ? (Par défaut pas d'impression)
*Toutes mes modifications sont entre les '**************** tu pourras les repérer facilement.

*Pourquoi ne pas fermer ton formulaire complétement et le ré-ouvrir quand c'est nécessaire....
VB:
'Fermeture du formulaire de saisie des paramètres établissement
    Saisie_configcofi.Hide
'A remplacer par
       Unload Saisie_configcofi

1615663031700.png
1615663319041.png
 

Pièces jointes

  • Odyssey V1.xlsm
    492.9 KB · Affichages: 12

Axos

XLDnaute Nouveau
Daniel,

Tu as raison effectivement. Autant pour moi. L'enregistrement de la feuille doit me permettre de la publier telle qu'elle sur internet.

Qui plus est la fonction OpenAfterPublish: avec l'argument False donne le même résultat. Ca bug...

Axos
 

Axos

XLDnaute Nouveau
Phil,

En réalité, je passe par un bouton "Imprimer" dédié au sein de mon userform qui lui même est accessible via une autre feuille que la feuille à enregistrer. C'est là qu'est le problème. Je sais très bien coder pour une impression de la feuille active. Mais pas pour une feuille différente. C'est là que j'ai besoin de votre aide.

Axos
 

danielco

XLDnaute Accro
Phil,

En réalité, je passe par un bouton "Imprimer" dédié au sein de mon userform qui lui même est accessible via une autre feuille que la feuille à enregistrer. C'est là qu'est le problème. Je sais très bien coder pour une impression de la feuille active. Mais pas pour une feuille différente. C'est là que j'ai besoin de votre aide.

Axos
VB:
Sheets("configuration").PrintOut

Daniel
 

Axos

XLDnaute Nouveau
Phil,

Merci de ta patience et de ton aide. Oui je l'ai regardé et analysé. Le problème, c'est que le script enregistre la feuille active, donc la feuille qui me sert de menu de navigation (appelée MENU) dans mon applicatif. Il n'enregistre pas la feuille de données proprement dite (appelée elle CONFIGURATION).

Je pensait qu'on pouvait, dans mon code d'origine remplacer la fonction Activesheet par Sheets("Nom de la feuille") suivie de l'argument ExportAsFixedFormat...

J'ai essayé également le code Sheets("configuration").PrintOut mais là aussi, ça ne fonctionne pas.

En réalité, mon userform de saisie de données s'ouvre à partir de la feuille "MENU" puis un bouton "Imprimer" doit permettre de générer le fichier .pdf (dans le même répertoire que l'applicatif) de la feuille de données appelée "CONFIGURATION". C'est aussi simple que ça...

Je ne comprends pas...

Axos.
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 177
Messages
2 085 972
Membres
103 073
dernier inscrit
MSCHOE16