Ordre imprimantes (Ne01,...)

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

linux21

XLDnaute Nouveau
Bonjour à tous et merci pour votre lecture,

Sur mon fichier facture, j'ai fabriqué des boutons pour aider l'utilisateur. Le premier bouton imprime la facture sur tel imprimante, un autre imprime sur une autre imprimante, et un dernier imprime la facture vers Adobe PDF (pour la création d'un PDF donc).

Le fichier facture se situe sur un serveur, et chaque ordinateur de la société à accès à ce fichier pour pouvoir facturer de son poste.

Les 3 imprimantes sont installés sur chaque ordinateur, mais l'ordre ne doit apparement pas etre le meme partout car l'ordinateur avec lequel j'ai fabriqué le fichier fonctionne très bien, mais pas pour les autres postes.

Mon vba est très simple, j'utilise Ne0X pour sélectionner l'imprimante. En voilà un pour l'exemple:

Code:
Sub Macro_ORIGINAL_PDF()

    ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, ActivePrinter:= _
        "Adobe PDF sur Ne03:", Collate _
        :=True

End Sub

Chaque ordinateur possède sa propre liste d'imprimantes, par conséquent mon problème parait plus que logique.
Existe t'il une solution pour, soit que tout les postes utilisent le meme Ne0X pour chaque imprimante, soit de passer par une alternative pour le choix d'imprimante via VBA.

Bien cordialement.
 
Re : Ordre imprimantes (Ne01,...)

bonjour,

j'ai eu le même problème de références différentes sur les autres postes, après quelques recherche, j'utilise ça:

Code:
Sub Impression_vers_Imprimante()

Dim x As Byte
Dim ImpStd As String

'===Valider le port de l'imprimante
For x = 0 To 9
    On Error Resume Next
    ImpStd = "nom_de_l_imprimante sur Ne0" & x & ":"
    Application.ActivePrinter = ImpStd
    If ActivePrinter = ImpStd Then Exit For
Next x
'===Lancer l'impression de la page courante
ActiveWindow.SelectedSheets.PrintOut _
    Copies:=1, _
    ActivePrinter:=Application.ActivePrinter, _
    Collate:=True
    
End Sub
en fait, ça teste les différentes sorties et voit si elles existent, une fois trouvée, elle sort de la boucle
chez moi ça fonctionne
à vérifier quand même avec l'enregistreur de macro sur chaque poste
à adapter aux différentes imprimantes (par exemple, pour les .pdf, je ne peux utiliser cette boucle car l'imprimante virtuelle n'est pas sur Ne..)

à+
 
Re : Ordre imprimantes (Ne01,...)

C'est parfait ça fonctionne !

Merci beaucoup francedemo 🙂

PS: Moi j'ai bien une imprimante Adobe PDF sur Ne0, probablement la suite ADOBE CS qui me l'a installé d'emblée.

Résolu vous pouvez fermer le sujet.
 
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

Discussions similaires

Réponses
21
Affichages
1 K
Réponses
11
Affichages
3 K
Retour