Choix imprimante par Default

Résolu
Bonjour a tous,
j'utilise un code qui me permet d'imprimer en pdf
mais si je change d'imprimante les marges ce modifient.
je souhaiterais ajouter ce petit bout de code

Application.ActivePrinter = "microsoft print to pdf"


au code que j'utilise actuellement

Sub copi_pdf()
Application.DisplayAlerts = False
Dim Chemin As String
Dim dossier As String
Dim sousdossier As String

Chemin = "C:\Users\moi\Documents\"
dossier = Sheets("test").Range("B27").Value & " " & Sheets("test").Range("B26").Value
sousdossier = Sheets("test").Range("B22").Value & " " & Sheets("test").Range("B25").Value

Sheets("test pour pdf").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
Chemin & dossier & "\" & sousdossier & "\" & Sheets("test pour pdf").Range("A15").Value _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=False

Application.DisplayAlerts = True
End Sub


merci a vous

7 réponses

  1. j'ai trouvé
    Application.ActivePrinter = "Microsoft Print to PDF sur Ne02:"
    1. Contributeur
      peux-tu alors marquer la discussion comme résolue?
  2. Contributeur
    bonjour, et quel soucis rencontres-tu quand tu l'ajoutes?
    1. Bonjour yg_be,
      si l'imprimante n'est pas microsoft print to pdf par default,
      j'ai un message Application.ActivePrinter = "microsoft print to pdf" = faux
      1. Contributeur
        peux-tu partager ton code, ainsi que le texte exact du message?
        sous quelle forme ce message s'affiche-t'il, et quand?
        1. code:
          Sub copi_pdf()
          Application.DisplayAlerts = False
          Dim Chemin As String
          Dim dossier As String
          Dim sousdossier As String
          
          Chemin = "C:\Users\moi\Documents\"
          dossier = Sheets("test").Range("B27").Value & " " & Sheets("test").Range("B26").Value
          sousdossier = Sheets("test").Range("B22").Value & " " & Sheets("test").Range("B25").Value
          
          Application.ActivePrinter = "microsoft print to pdf"
          
          Sheets("test pour pdf").ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
          Chemin & dossier & "\" & sousdossier & "\" & Sheets("test pour pdf").Range("A15").Value _
          , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
          :=False, OpenAfterPublish:=False
          
          
          Application.DisplayAlerts = True
          End Sub
          


          message erreur:
          vba excel erreur d'exécution 1004
          La methode ActivePrinter de l'objet _Application a échoué

          et quand je passe le curseur sur la ligne en jaune:
          Application.ActivePrinter = "microsoft print to pdf" = faux
      2. Bonjour,

        N'est-ce pas simplement un problème de casse ?
        Microsoft Print to PDF (au lieu de microsoft print to pdf)
        1. bonjour patrice,
          je viens de tester, tjrs le même message d'erreur!
          1. sinon et quand je passe le curseur sur la ligne en jaune:
            Application.ActivePrinter = "fax sur NeO3"
            (FAX est l'imprimante qui me sert à tester )