OVH Cloud OVH Cloud

Code VBA pour imprimer recto-verso

1 réponse
Avatar
Pierre Archambault
Bonjour à tous,

Je me demande s'il est possible de faire en sorte que les deux feuilles que
je sélectionne dans un même classeur soient imprimées recto-verso sur mon
imprimante HP qui supporte cette fonctionalité.

Je voudrais éviter d'avoir à activer cette fonction manuellement à chaque
impression sans toutefois modifier le comportement par défaut de
l'imprimante qui consiste à n'imprimer que le recto.

Je me demandais si l'utilisation de codes "escape" pourrait en venir à bout;
si oui comment les envoyer à l'imprimante.

Merci.

Pierre

1 réponse

Avatar
michdenis
Bonjour Pierre,

Si cela t'intéresse, je te propose une bidouille....!

A ) Après avoir fait un aperçu avant impression, quand tu reviens à l'affichage normal, chaque plage de cellules pour l'impression
est délimitée par un pointillé.
B ) Pour chacune des feuilles à imprimer, tu inscris dans une variable de type variant l'adresse de ces plages dans l'ordre avec
lequel tu désires jumeler ces plages

Je t'ai fait un petit exemple de ce que cela pouvait donner !
À l'impression, le premier élément du tableau de la var1 va
être jumelé avec le 1 premier élément du tableau var2
ainsi de suite !

Il serait possible de tout automatiser ...y compris la section décrite plus haut...
mais cela dépasse je crois, le petit coup de pouce d'un forum ;-)

'--------------------------------
Sub ImprimerRecto_Verso()

Dim A as Integer, B as Integer
Dim Sh As Worksheet, DerLig as Integer
Dim Var1 As Variant 'Feuil1
Dim Var2 As Variant 'Feuil2

'Liste des plages
Var1 = Array("Feuil1!A1:G51", "Feuil1!A51:G102")
Var2 = Array("Feuil2!A1:G45", "Feuil2!A46:G90")

Set Sh = Worksheets.Add
For A = 0 To UBound(Var1) - 1
If Sh.Range("A1") = "" Then
derlig = 1
Else
derlig = Sh.Range("A65536").End(xlUp).Row + 1
End If
Range(Var1(A)).Copy Sh.Range("A" & derlig)
For b = 0 To UBound(Var2) - 1
derlig = Sh.Range("A65536").End(xlUp).Row + 1
Range(Var2(b)).Copy Sh.Range("A" & derlig)
Next
Sh.PrintPreview
Sh.Cells.Clear
Next

End Sub
'--------------------------------


Salutations!



"Pierre Archambault" a écrit dans le message de news:
xv3bf.30861$
Bonjour à tous,

Je me demande s'il est possible de faire en sorte que les deux feuilles que
je sélectionne dans un même classeur soient imprimées recto-verso sur mon
imprimante HP qui supporte cette fonctionalité.

Je voudrais éviter d'avoir à activer cette fonction manuellement à chaque
impression sans toutefois modifier le comportement par défaut de
l'imprimante qui consiste à n'imprimer que le recto.

Je me demandais si l'utilisation de codes "escape" pourrait en venir à bout;
si oui comment les envoyer à l'imprimante.

Merci.

Pierre