• Initiateur de la discussion Initiateur de la discussion RONIBO
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

RONIBO

XLDnaute Impliqué
Bonsoir le forum,

J'aimerais pouvoir imprimer fichier excel en pdf grâce à un code vba ainsi un bouton de commande.

J'utilise ce code, pour enregistrer, répertorier, ainsi que nommé un fichier automatiquement, (un simple clic sur l'icone "enregistrer")

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
SaveAsUI = False
Cancel = True
With Worksheets("Feuil1")
Select Case Left(.Range("H10"), 1)
Case "B": Chemin = "C:\"
Case "D": Chemin = "C:\"
Case "F": Chemin = "C:\"
End Select
MyFile = Chemin & .Range("H10") & .Range("I10") & Chr(160) & "-" & Chr(160) & .Range("A12") & Chr(160) & "(" & .Range("G14") & ")" & ".xlsm"
End With
Application.EnableEvents = False
Me.SaveAs MyFile
Application.EnableEvents = True
MsgBox "La facture ou le devis a bien été enregistrée !"
End Sub

J'aimerais qu'avant de créer le fichier pdf, qu'on procéde comme ceci :
Des que je clic sur le bouton de commande pour créer le fichier pdf

1 - Enregistrer le fichier, ce qui permettra de nommer le fichier avant de créer le fichier pdf,
2 - Créer le fichier pdf au même nom que du fichier enregistré précédemment

Si possible ne pas utiliser de logiciel en plus 🙂

Merci d'avance

Voici le fichier concerné :
 

Pièces jointes

Re : créer fichier pdf

Bonne nuit à tous

RONIBO
Tu es sous Excel 2007, donc tu peux faire un Enregistrer Sous -> Type Fichier: *.pdf tout en lançant l’enregistreur de macros.
Ainsi tu auras ainsi un code VBA de départ pour créer un PDF à partir d'Excel.

Sinon pour plus de détails, cliques sur la loupe en haut à droite, et tu trouveras moults discussions sur le forum qui causent "PeuDeuFeu et XL" 😉, sans oublier les cinq liens en bas de page dans Discussions similaires

EDITION:
Oublies les Discussions similaires dans le cas présent, car il semble qu'elles n'aient pas à première vue de rapport avec ta question.
 
Dernière édition:
Re : créer fichier pdf

Bonjour Staple1600 🙂

J'ai suivi les instruction que tu m'as donné, merci

Voici s'que j'obtiens :

Sub Macro3()
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Akisti Bat\Factures\Facture N°001*-*ATOLE INDUSTRIE*(PARIS XXÈME).pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=True
End Sub

Comment je fais pour l'intégrer avec ce macro :

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
SaveAsUI = False
Cancel = True
With Worksheets("Feuil1")
Select Case Left(.Range("H10"), 1)
Case "B": Chemin = "C:\"
Case "D": Chemin = "C:\"
Case "F": Chemin = "C:\"
End Select
MyFile = Chemin & .Range("H10") & .Range("I10") & Chr(160) & "-" & Chr(160) & .Range("A12") & Chr(160) & "(" & .Range("G14") & ")" & ".xlsm"
End With
Application.EnableEvents = False
Me.SaveAs MyFile
Application.EnableEvents = True
MsgBox "La facture ou le devis a bien été enregistrée !"
End Sub

a+
 
Re : créer fichier pdf

Bonjour à tous

RONIBO:
Tu vois vraiment pas où mettre la ligne de code pour l'export e PDF?
D'un côté tu as
Code:
MyFile=MyFile = Chemin & .Range("H10") & .Range("I10") & Chr(160) & "-" & Chr(160) & .Range("A12") & Chr(160) & "(" & .Range("G14") & ")" & ".xlsm"

Ce qui ressemble bigrement à un FileName, non?
Et de l'autre tu as justement:
Code:
Filename:="C:\Akisti Bat\Factures\Facture N°001*-*ATOLE INDUSTRIE*(PARIS XXÈME).pdf"

Ce qui déjà nous donne une piste

Ensuite tu as
Me.SaveAs MyFile, ce qui logiquement nous donnerait l'endroit où devrait se passer l'export en PDF, non ?

Je te laisse mixer tout cela avec ces indices.
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 Problème macro
Réponses
4
Affichages
254
Réponses
10
Affichages
554
  • Question Question
Microsoft 365 Probléme VBA
Réponses
8
Affichages
329
Retour