VB excel pour impression automatiser

amateurIDE Messages postés 2 Date d'inscription vendredi 6 janvier 2012 Statut Membre Dernière intervention 6 janvier 2012 - 6 janv. 2012 à 15:43
amateurIDE Messages postés 2 Date d'inscription vendredi 6 janvier 2012 Statut Membre Dernière intervention 6 janvier 2012 - 6 janv. 2012 à 16:57
Bonjour
Logiciel utiliser : excel 97
Le cadre : utilisation au boulot. automatiser des impressions avec différentes mise en page en utilisant des macros associés à des boutons de commande
Support : une feuille de calcul qui s'etalle sur plusieurs pages.
- la premiere page contient un plan du service qui est mis a jour regulierement avec plusieurs formules qui automatisent des calculs... (jusque là, je maitrise, l'ensemble tien la route)
- la deuxieme page est generée à partir d'infos mise sur la premiere... (là aussi, ça va)

> l'interet est d'avoir sur la premiere page qui est celle "de base" sur lequel le travail de mise a jour est fait, d'avoir deux boutons de controle : le 1er bouton qui lance l'impression de la premiere page sur une seule feuille A4 pour une vue d'ensemble du service... et une 2eme bouton qui lance l'impression de la premiere et de la deuxieme page, les 2 sur une meme feuille A4 pour une utilisation "volante" (chaque utilisateur peut avoir le plan du service et la 2eme page qui presente certaines infos et lui laisse la possibilité de rajouter au stylo ses infos de la journée)

(explication exhaustives, un peu longue, desolé, mais au moins, je pense que vous aurez une bonne vue d'ensemble de la feuille de calcul)

> en tant qu'amateur, j'ai fait des macros simples :
-1er bouton : "nouvelle macro IMPRIM1" + fichier/imprimer/page1à1/propriete de l'imprimante:1page par feuille/fin de macro avec associer macro au 1er bouton
-2eme bouton : "nouvelle macro IMPRIM2" + fichier/imprimer/page1à2/propriete de l'imprimante:2pages par feuille/fin de macro avec associer macro au 2eme bouton

> PROBLEME : le mode d'impression reste tjrs sur le modele de la derniere macro réalisée.
- si c'est dans l'ordre presenter, apres la 1ere macro, impression conforme, puis 2eme macro et impression ok... par contre, si je relance la 1ere macro, l'impression se fait sous le modele de la 2eme avec 2 pages par feuille
et vice versa...

> comment puis-je regler ce probleme SVP. merci d'avance...

2 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 72
6 janv. 2012 à 16:13
surement possible de lancer l'enregistrement d'une macro
de changer le mode d'impression
d'arreter l'enregistrement
et de voir le code VBA généré pour procéder au changement de mode

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
0
amateurIDE Messages postés 2 Date d'inscription vendredi 6 janvier 2012 Statut Membre Dernière intervention 6 janvier 2012
6 janv. 2012 à 16:57
re...

1ere idée: j'ai fais la 2eme macros (2pages par feuille), lancé l'impression (comme désiré en 2pages par feuille), puis remis la mise en page à 1pageparfeuille et terminé la macro.
> ça ne marche pas, qd je reclique sur les boutons de controle, l'impression reste en 1page par feuille...

2eme idée: je visionne le code VB generé par les 2 macros d'impression
> les codes ne different que par le nombre de page à imprimer.

> la precision : 1page par feuille ou 2 pages par feuille n'apparait pas dans le code VB. dans le menu d'impression, on ne l'obtient qu'en passant par "parametre de l'imprimante".

? il y a t'il un code VB pour preciser l'impression en "1 page par feuille" et en "2 pages par feuille"

? existe t'il une fonction zoom qui a serait mis en zoom 1 pour l'impression de la macro1 en 1page par feuille et en zoom 0.5 pour l'impression de la macro2 (qui donnerait à l'impression un resultat equivalent à du "2pages par feuille" car les tailles des pages serait divisées par 2... après, il suffirait de specifier mode paysage pour la macro1 et puis mode portrait pour la macro2... vous voyez où je veux en venir..?

à bientôt et merci à ceux qui prenne le temps de reflechir à mon p'tit probleme
0