imprimante

  • Initiateur de la discussion jpaul625
  • Date de début
J

jpaul625

Guest
Bonjour a tous,et félécitation pour le forum.

Je vous explique mon problèmme!

J'ai deux imprimante une laser Lexmark et une jet encre Hp.
Mon fichier excel selectionne mon imprimante par default Hp,
J'aimerais garder mon imprimante Hp par default.
Et seulement pour mon dossier excel j'aimerais automatiquement
mon imprimante laser.
Merci de votre aide
 

myDearFriend!

XLDnaute Barbatruc
Bonjour jpaul625,

La solution qui me semble la plus simple, c'est de copier le code VBA suivant dans l'objet ThisWorkbook de ton classeur :
Private Sub Workbook_Activate()
      Application.ActivePrinter = 'Lexmark...'   'ICI, l'expression exacte qui représente l'imprimante laser
End Sub

Private Sub Workbook_Deactivate()
      Application.ActivePrinter = 'hp...'   'ICI, l'expression exacte qui représente l'imprimante HP
End Sub
Pour récupérer les expressions exactes représentant le nom des imprimantes, tu peux utiliser l'enregistreur de macro comme suit :
[ol][li]Tu fais menu Outils / Macro... Nouvelle Macro... puis OK[/li]
[li]Ensuite tu fais Menu Fichier / Imprimer...[/li]
[li]Tu sélectionnes l'autre imprimante dans la liste, puis Fermer (inutile d'imprimer là).[/li]
[li]Tu recommences l'opération pour l'autre imprimante : Menu Fichier / Imprimer...[/li]
[li]Tu sélectionnes l'autre imprimante dans la liste, puis Fermer.[/li]
[li]Ensuite tu arrêtes l'enregistrement de la macro par menu Outils / Macro... et Arrêter l'enregistrement.[/li][/ol]Tu trouveras ainsi les noms exacts des imprimantes dans un nouveau module de code créé dans ton projet VBA (ces noms sont donc à insérer dans le code ci-dessus).

J'espère avoir été compréhensible...:unsure:

Cordialement,
 
S

SamLePirate

Guest
Slt,
J'ai trouvé cette fonction très interressante pour moi et la seule différence est que mon imprimante sur laquelle ma feuille doit etre imprimée est le 'Fax' ou moniteur de télécopie de Windows !
J'ai donc ecrit ce code, (en respectant le nom de chaque imprimante comme expliqué ci-dessus), et ça donne ça :
Private Sub Workbook_Activate()
Application.ActivePrinter = 'Fax sur Ne01:'
End Sub

Private Sub Workbook_Deactivate()
Application.ActivePrinter = 'Canon MP360 Series Printer sur Ne02:'
End Sub
Mais la feuille continu a s'imprimer sur l'imprimante par défault qui est la 'Canon' !!
Normalement il devrait s'ouvrir l'assistant 'envoie de télécopie' comme si c'était le fax comme imprimante par défault ???
Quelqu'un a une idée ?
Merci d'avance...
 

Statistiques des forums

Discussions
312 559
Messages
2 089 637
Membres
104 234
dernier inscrit
boulayy