Imprimer un fichier excel + un document Word

Natiffar

XLDnaute Nouveau
Arghh! Je viens de taper un long message pour exposer un problème et je viens de tout perdre.

Je résume donc ce que je disais !

Bonjour à tous !

Je reviens après des semaines d'absence.

Pour ceux qui se souviennent de moi je travaille toujours sur mon bon de commande et je prévois son déploiement dans les prochains jours. Pour les autres, merci de vous reprotez à mes précédents fils !

J'ai une nouvelle problématique de taille :unsure:

Lorsque je clique sur mon bouton (qui déclenche une série de ligne de code pour enregistrer le fichier sous un certain nom, le placer dans un dossier spécifique, générer un pdf et l'imprimer sur une imprimante au choix), je souhaiterai également imprimer au verso de mon document, un document Word contenant des conditions générales. Bien sûr, touts nos imprimantes ne fonctionnant pas en mode recto/verso, il faut que j'arrive à anticiper cette situation.

Quelqu'un a-t-il une idée ?

Merci d'avance à tous !

Natiffar :evil:
 

Natiffar

XLDnaute Nouveau
Coucou à tous,

Je vois que mon fil n'intéresse personne. Tant pis, pendant ce temps je cherche d'autres solutions. C'est d'ailleurs pour cela que je reviens car mes réflexions me posent un nouveau problème.

En fait, pour pouvoir imprimer mon document Word à la suite de mon document Excel, j'utilise le code suivant:

Code:
   Dim dlganswer As Boolean
        
        dlganswer = Application.Dialogs(xlDialogPrinterSetup).Show

    If dlganswer = True Then
        ActiveWindow.SelectedSheets.PrintOut Copies:=1, collate:=True
    End If

Dim appWrd As Word.Application
Dim docWord As Word.Document
Dim Fichier As String

Fichier = 'X:\\Commandes\\Conditions d'achat OPM.doc'

Set appWrd = CreateObject('Word.Application')appWrd.Visible = False
Set docWord = appWrd.Documents.Open(Fichier)

docWord.PrintOut

docWord.Close
appWrd.Quit

Avec ce code, j'imprime donc un document Excel + un fichier Word automatiquement en tâche de fond et de manière quasi invisible pour l'utilisateur.

Mon problème est le suivant:
Pour imprimer le fichier Excel, j'ouvre un boite de dialogue pour choisir mon imprimante et je souhaiterais que l'imprimante séléctionnée soit également utilisée d'office pour imprimer mon document Word car actuellement ca l'imprime sur l'imprimante par défaut qui n'est pas toujours celle sélctionnée pour le fichier Excel.

Si vous avez compris mon problème et que vous avez une idée, voire même une solution, merci d'avance.

@+

Natiffar :evil:
 

Marc_du_78

XLDnaute Accro
Bonsoir Natiffar, le Forum,

Je ne suis pas du tout un spécialiste de Vba, néanmoins avec l'enregistreur de macro, j'ai obtenu ceci :

Sub ImprimerSur()
Application.ActivePrinter = 'EPSON Stylus C82 Series sur Ne03:'
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
'EPSON Stylus C82 Series sur Ne03:', Collate:=True
End Sub

En espérant t'avoir été utile, car je fais encore, même à mon âge, des bourdes.
En te souhaitant une bonne soirée, garde espoir.
 

Natiffar

XLDnaute Nouveau
Merci Marc du 78.

Sauf erreur de ma part, puisque moi non plus je ne suis pas un pro du VBA, le code que tu as trouvé n'est que le code permettant d'imprimer un document actif sur une imprimante spécifique.
Mais mon problème n'est pas là. J'arrive déjà à imprimer mon document Excel actif, mais je souhaiterais également de manière systématique, dès que l'utilisateur imprime son bon de commande, imprimer en tâche de fond un document Word présent sur mon réseau. Et c'est pas simple, car j'ai bien le code qui convient: il ouvre le fichier Word en question, l'imprime et le ferme, mais il le fait sur l'imprimante par défaut défini dans l'ordinateur et non sur l'imrpimante que l'utilisateur avait choisi pour imprimer le bon de commande. Résultat : mes utilisateurs courent dans tous les sens pour récupérer au bout de chaque imprimante la commande et le document Word (qui sont en fait les conditions de vente).

Bref pour résumer, j'ai besoin de savoir comment garder une imprimante en mémoire pour pouvoir la réappeler dans un autre code VB.

Merci tout de même.

Natiffar :evil:
 

Discussions similaires

Statistiques des forums

Discussions
312 172
Messages
2 085 932
Membres
103 050
dernier inscrit
HAMZA BKA