VBA - Si Application.ActivePrinter = erreur, prend l'autre !

  • Initiateur de la discussion Initiateur de la discussion Int0x
  • 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 !

Int0x

XLDnaute Occasionnel
Bonjour le forum,

Je me permets de vous solliciter car il me manque un bout de code.
J'ai fait un fichier qui permet d'imprimer des onglets sur demande, en PDF.

Le code pour sélectionner PDF creator est le suivant
Application.ActivePrinter = "PDFCreator sur Ne00:"

Le problème, c'est que certains ont des versions différentes et que ca plante car leur version est
Application.ActivePrinter = "PDFCreator sur Ne03:"

Je souhaiterais donc écrire:
si
Application.ActivePrinter = "PDFCreator sur Ne00:"
fait bugguer la macro, alors prends plutôt
Application.ActivePrinter = "PDFCreator sur Ne03:"

Comment pourrais-je réécrire mon bout de code ?
Code:
Application.ActivePrinter = "PDFCreator sur Ne00:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"PDFCreator sur Ne00:", Collate:=True

Par avance merci,
Int0x
 
Re : VBA - Si Application.ActivePrinter = erreur, prend l'autre !

Bonjour Misange,

C'est exactement le bout de code qui me manquait !
J'ai fait des recherches en parant de ça, c'est vraiment trèèèèès pratique !

Merci beaucoup 🙂
 
Re : VBA - Si Application.ActivePrinter = erreur, prend l'autre !

Attention, cette solution est à réserver pour le genre de situation que tu décris : tu sais que ton code peut générer une erreur, erreur que tu connais parfaitement et que tu n'as pas besoin de gérer autrement. Nickel dans ce cas. En revanche, c'est une instruction à proscrire quand tu mets au point une macro car tu n'as aucun message d'erreur qui t'indique ce qui se passe.
 
Re : VBA - Si Application.ActivePrinter = erreur, prend l'autre !

Bonsour®
utiliser une detection d'erreur.

avant la commande d'impresssion ou de mise en page :
On error goto ErrImp
./.
ton code

./.
exit sub
ErrImp:
Application.Dialogs(xlDialogPrinterSetup).Show
resume next
end sub
 
- 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

Réponses
21
Affichages
1 K
Retour