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

6 réponses

  1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
     
    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
  2. 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
    1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      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
  3. avorainne
     
    non toujours pas. j'ai un message d'erreur 1004 et c'est toujours en jaune.
    0
    1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      Changer

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


      par

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


      sinon:

      NomFichier = "Essai.pdf"
      0
  4. avorainne
     
    Pas de changement. Toujours erreur 1004.
    0
    1. cs_Le Pivert Messages postés 8437 Statut Contributeur 730
       
      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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. 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
  7. 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