Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

macro et imprimante

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

B

beatrice2fr

Guest
bonjour
je voudrai lancer une macro en fonction de l'imprimante par default qui est installé ( exemple lexmark x2250 ) . Il y a t'il un code dans ce sens.
merci
 
Re : macro et imprimante

Bonjour le fil, Jean-Marcel, Beatrice2fr

Essayes avec l'enregistreur de macro. C'est très pratique.
Exemple chez moi
Code:
Sub Macro1()
'
' Macro1 Macro
'
'
    Application.ActivePrinter = "Nom de mon imprimante sur Nxx::"
    ExecuteExcel4Macro "PRINT( ... etc )"
End Sub

A plus
 
Re : macro et imprimante

merci de ta reponse , mais en fait je cherche plutot a faire en sorte que :
si la lexmark est installé en imprimante par default
alors on lance la macro 1
sinon la macro 2.

c'est un peu le meme principe que de lancer une macro selon la valeur d'une cellule. mais je ne sais pas comment ecrire cela en vba.
 
Re : macro et imprimante

bonjour le forum
j'ai utuliser le code suivant mais je pense que " Application.ActivePrinter " ne convient pas

Code:
Private Sub Workbook_Open()
stImp = Application.ActivePrinter
If Dir(stImp) = "Lexmark 2250" Then
MsgBox ("tout va bien")
Else
MsgBox ("c'est pas bon ")
End If
End Sub
 
Re : macro et imprimante

Bonjour le fil, Jean-Marcel, Beatrice2fr


Attention : Une imprimante pour Windows est autre chose qu'un périphérique d'impression.

De ce fait un code du type :
' If Application.ActivePrinter = "Lexmark 2250" then ...
ne peut pas fonctionner.

L'instruction suivante te donnera le nom complet de l'imprimante active (au sens Windows du terme).
Code:
MsgBox Application.ActivePrinter
et tu pourras alors écrire
Code:
If Application.ActivePrinter = "[COLOR=green][B]Le nom complet de l'imprimante[/B][/COLOR]" Then
    MsgBox ("tout va bien")
Else
    MsgBox ("c'est pas bon ")
End If
A plus
 
Re : macro et imprimante

j'ai effectivement mis le nom complet et le resultat est que que vba trouve une erreur de syntaxe

Code:
If Dir (Application.ActivePrinter) = "Lexmark 2200 Series sur Ne02: Then
    MsgBox ("tout va bien")
Else
    MsgBox ("c'est pas bon ")
End If
End Sub
 
Re : macro et imprimante

Re,

j'ai effectivement mis le nom complet et le resultat est que que vba trouve une erreur de syntaxe
Oui, car tu as omis les guillemets à la fin du nom complet, (quant au Dir, c'est Dur de Dire ... 🙂)
Code:
If Application.ActivePrinter = "Lexmark 2200 Series sur Ne02:[B][SIZE=3][COLOR=#ff0000]"[/COLOR][/SIZE][/B] Then ...
A plus
 
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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Remplissage auto
Réponses
14
Affichages
380
  • Question Question
Microsoft 365 macro imprimante
Réponses
20
Affichages
1 K
Réponses
4
Affichages
481
Réponses
5
Affichages
212
Réponses
37
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…