|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 41 ![]() |
Bonjour !
Un progiciel me génère plusieurs contrat dans le même document word et chaque contrat fait 3 pages, le nombre de contrat varie à chaque fois. Par exemple, le logiciel me génère 3 contrats, j'ai donc un document word de 9 pages. Pour imprimer ces contrats je dispose d'un imprimante à deux bac. Le 1er bac contient du papier entête avec le logo de ma socièté et le second du papier blanc. Je cherche à imprimer la première page de chaque contrat avec le bac 1 (le papier avec entête) les autres pages avec le bac 2 (papier blanc) dans mon exemple de 3 contrats / 9 pages, j'imprime d'abord les pages 1-4-7 sur le bac1 puis les autres pages sur le bac2. Cette opération manuelle est quotidienne et fatidieuse quand le nombre de contrat est important. Je cherche une idée, un truc, une astuce pour augmenter ma productivité. J'ai essayé de séparer chaque contrat par un saut de section et dans les options de mise en page / onglet papier indique bac1 pour la première page et le bac 2 pour les suivantes mais seule la page1 du contrat 1 s'imprime depuis le bac2, tout le reste sort sur le bac 2 !!! Je peux peut-être enregistrer une macro car je ne sais pas les écrire mais le nombre de contrat étant variable cela pose problème! Pouvez-vous m'aider ? Merci beaucoup ! |
|
|
00
|
|
|
#2 | ||
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 354 ![]() |
On devrait pouvoir le faire en VBA.
Code :
ActiveDocument.ActiveWindow.PrintOut Range:=wdPrintFromTo, from:="3", to:="3" Code :
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
||
|
|
00
|
|
|
#3 | ||
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 41 ![]() |
Merci !
Je pense que c'est déjà 80% de la solution, Je vois le principe mais pour moi vba = chinois ! Est-il possible da faire un algorithme du genre : Code :
Je me doutait que VBA serait la solution, ce n'est pas de la mauvaise volonté mais du manque de temps et de l'ignorance sur VBA : je ne serais jamais écrire cette macro seul... Encore merci. |
||
|
|
00
|
|
|
#4 | ||
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 354 ![]() |
Petite explication
Code :
ActiveDocument.ActiveWindow.Panes(1).Pages.Count qui donne le nombre de pages du document si le document fait 9 pages, le valeur renvoyée sera 9 ActiveDocument.ActiveWindow.PrintOut Range:=wdPrintFromTo, from:=n +1, to:=n +2 Imprimera les autres pages, maintenant, il faut chercher les paramètres qu'il faut utiliser pour ton imprimante.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
||
|
|
00
|
|
|
#5 |
|
Candidat au titre de Membre du Club
![]() Inscription : août 2006 Messages : 41 ![]() |
merci pour ces explications je vais essayer de trouver.
On me parle aussi de cette solution : Avant d'imprimer se rendre dans le menu Fichier / Mise en page / Onglet Papier, sélectionner le bac à entête pour la partie Première page et l'autre bac pour la partie Autres Pages, vérifier que l'option Appliquer à Tout le document est bien sélectionnée, valider par OK puis imprimer. (IL NE FAUT PAS UTILISER APPLIQUER A CETTE SECTION MAIS A TOUT LE DOCUMENT!) Je vais essayer et je vous tiens informé ! |
|
|
00
|
|
|
#6 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 354 ![]() |
Ça va fonctionner, mais c'est à faire pour chaque document, alors que la macro peut se résumer à un bouton.
En plus, il faudra faire une section par contrat, sans ça, il n'y aura que la première page qui sera imprimée différemment.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ? Débutez en VBA Mes articles Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus ! |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com