Macro vba sauvegarder en PDF

Avorainne -  
 avorainne -
Bonjour,

Je suis novice en VBA et je galère depuis 2 jours sur une macro qui devrait être assez simple. J'ai une facture sous excel et je souhaite la sauvegarder en pdf dans un autre dossier. voici ce que j'ai écrit :
"
Sub PDF()

Dim Chemin As String, NomFichier As String
NomFichier = Range("D21") & ".pdf"
'NomFichier = ActiveSheet.Range("D21") & ".pdf"
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = -1 Then ' Clic sur Ok
Chemin = "C:\Users\MBH\Desktop\PCAvoriaz2021\Compta2021\factureséditées\"

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & NomFichier,_
Quality:=xlQualityStandard,_
IncludeDocProperties:=True,_
IgnorePrintAreas:=False,_
OpenAfterPublish:=True

End Sub

J'ai consulté plein de forum sans trouver d'ou vient mon ou es errueur
Merci de votre aide
Anne

Configuration: Windows / Chrome 88.0.4324.190
A voir également:

6 réponses

cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Bonjour,

comme ceci:

Option Explicit
Sub PDF()
Dim Chemin As String, NomFichier As String
NomFichier = Range("D21") & ".pdf"
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = -1 Then ' Clic sur Ok
Chemin = "C:\Users\MBH\Desktop\PCAvoriaz2021\Compta2021\factureséditées\"
End If
End With
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & NomFichier, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub


0
avorainne
 
Bonjour
Merci de votre réponse mais cela ne fonctionne pas. La facture ne va pas automatiquement dans le bon dossier puis j'ai un message d'erreur .
toute cette partie apparait en jaune :
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & NomFichier, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
0
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
et comme cela?

Sub PDF()
Dim Chemin As String, NomFichier As String
NomFichier = Range("D21") & ".pdf"
Chemin = "C:\Users\MBH\Desktop\PCAvoriaz2021\Compta2021\factureséditées\"
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Chemin & NomFichier, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=True
End Sub


@+ Le Pivert
0
avorainne
 
non toujours pas. j'ai un message d'erreur 1004 et c'est toujours en jaune.
0
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Changer

NomFichier = Range("D21") & ".pdf"


par

NomFichier = ActiveSheet.Range("D21") & ".pdf"


sinon:

NomFichier = "Essai.pdf"
0
avorainne
 
Pas de changement. Toujours erreur 1004.
0
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Quelle version d'Excel?

Essayer pour voir si le chemin complet est correct:

NomFichier = Range("D21") & ".pdf"
Chemin = "C:\Users\MBH\Desktop\PCAvoriaz2021\Compta2021\factureséditées\"
MsgBox  Chemin & NomFichier
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
avorainne
 
J'ai essayé le chemin a l'air d'être ok. En fait je travaille chez moi avec une version récente d'excel et le chemin est simplifié mais au boulot j'ai une version bcp plus ancienne avec un chemin plus long (celui de mon exemple précédemment décrit).
ma macro ne fonctionne pas chez moi. demain je fais un essai au travail. Merci de votre aide
0
avorainne
 
Bonjour,
J'ai trouvé ce qui clochait : c'était le nom de mon fichier "factures éditées" que j'ai transformé en "Factures PDF" et tout fonctionne !
Merci de votre aide et de votre temps.
0