Impression | Configuration de Page Imprimante | A4 / Format de Sortie A5

ZeBilou

XLDnaute Nouveau
Bonjour,

J'ai développé un code VBA qui permet d'imprimer des étiquettes de livraison client à partir d'Excel. Il y a un lien ODBC avec la BDD de l'ERP qui permet de collecter les données nécessaires à la création des étiquettes (N° de commande/ligne, type de commande etc.). Tout ceci fonctionne parfaitement bien sauf que, sauf que...

Là où j'ai un problème c'est que je ne sais pas comment instruire les paramètres de configuration de la page à imprimer dans les propriétés de l'imprimante.
Pour faire simple:
L'étiquette à imprimer a 2 formats possibles: A4 ou A5.
Le format A4 est le format par défaut (c'est le gabarit de l'étiquette qui est défini sur du A4 dans Excel)
L'utilisateur peut choisir le format de sortie A4 ou A5 sur un onglet de saisie des données étiquettes
Si l'utilisateur choisit A5, alors je souhaiterais passer des paramètres de configuration précisant que:
- le format de page est A4
- mais que le format de sortie est A5, afin que la mise à l'échelle se fasse automatiquement sans aucune intervention de l'utilisateur.
Le papier est chargé manuellement par les opérateurs dans le bac de l'imprimante (A4 ou A5) donc pas de problématique de sélection de bac.

Auriez-vous quelques idées ou astuces? Cela me dépannerait bien!
Dans tous les cas, merci d'avance!
 

JCGL

XLDnaute Barbatruc
Re : Impression | Configuration de Page Imprimante | A4 / Format de Sortie A5

Bonjour à tous,

Utilise l'enregistreur de macro pour t'aider à trouver les bons arguments du code.

A+ à tous
 

Papou-net

XLDnaute Barbatruc
Re : Impression | Configuration de Page Imprimante | A4 / Format de Sortie A5

Bonjour ZeBilou

J'allais te proposer la même solution que JCGL (que je salue au passage), mais je me suis dis que l'enregistreur est lourd en instructions. Voici donc une version édulcorée des macros :

Code:
Sub ImpressionA4()
With ActiveSheet.PageSetup
    .PaperSize = xlPaperA4
    .Zoom = 100
End With
End Sub

Sub ImpressionA5()
With ActiveSheet.PageSetup
    .PaperSize = xlPaperA5
    .Zoom = 50
End With
End Sub
Espérant avoir été utile.

Cordialement.
 

Discussions similaires


Haut Bas