XL 2010 programmer une imprimante en VBA

JM27

XLDnaute Barbatruc
Bonsoir
J'ai une imprimante qui imprime en recto/verso
Je souhaite la piloter en verso uniquement , puis revenir après impression recto verso.
hélas je ne trouve pas dans l'aide VBA l'instruction qui le fais
merci de votre aide
 

Phil69970

XLDnaute Barbatruc
Bonjour à tous

@JM27

Est ce ton imprimante perso ou celle de ta boite ?
Et si c'est celle de ta boite as tu la main dessus ?

Si tout est verrouillé par ton SI je te propose de voir cette discussion qui ressemble à ton PB

 

Phil69970

XLDnaute Barbatruc
Re

Pour le NB/Couleur on peut faire ceci mais c'est hors sujet ici 🤣

VB:
Retour = MsgBox("Voullez-vous une copie couleur : O/N ", vbYesNo + vbCritical)
If Retour = vbNo Then Mem = "N & B" Else Mem = "Couleur"

With Worksheets(Nomn de ma feuille).PageSetup
    If Mem = "N & B" Then .BlackAndWhite = True Else .BlackAndWhite = False
End With


Et sur une imprimante perso tu peux créer une imprimante avec les paramètres que tu veux et l'appeler quand tu veux

Voir ici tout le fil (c'est un peu long.....)

Edit :
En résumé du dernier lien
Tu peux contourner le PB ajoutant la même imprimante 2 fois à Windows et régler les paramètres par défaut de la deuxième imprimante sur Recto seulement.

==> Ton Imprimante (Recto Verso)
==> Ton Imprimante (Recto seul)

Tu appelle dans VBA l'imprimante que tu veux en fonction de ce que tu veux faire .....
 
Dernière édition:

patricktoulon

XLDnaute Barbatruc
re
bonsoir

dans le pire des cas si tu n'arrive pas à la paramétrer
tu imprime page par page
chaque page sera une session d'impression donc nouvelle feuille a chaque fois

exemple d'impression d'une feuille
VB:
Sub test()
    PrintByPage Sheets(1)
End Sub

Function PrintByPage(WsH As Worksheet)
    Dim NbPageS&, x&
    With WsH
        With .PageSetup
            NbPageS = .Pages.Count
            '...
            '...
            'd'autres paramètre ici que tu pourrais bien vouloir
            '...
            '...
        End With
        For x = 1 To NbPageS: .PrintOut From:=x, To:=x, Copies:=1, Collate:=True, IgnorePrintAreas:=False: Next
    End With
End Function
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 215
Messages
2 086 335
Membres
103 190
dernier inscrit
silverwolf854