OVH Cloud OVH Cloud

Imprimer en un seul temps, mais avec des variations...

16 réponses
Avatar
Jacques ELKINE
Bonjour,

J'ai souvent à imprimer des documents en deux ou plusieurs exemplaires et ce serait un grand pied
que de pouvoir, en une seule passe, imprimer le premier exemplaire tel qu'à l'écran, puis le ou les
suivants avec une mention additionnelle. Par exemple "Copie" ou "Duplicata".

Je sais, c'est possible en imprimant en deux temps et en ajoutant la mention. J'imagine qu'il
pourrait y avoir une formule en VBA, maiz là je sèche... et j'ai pas trouvé d'idée dans mes
différentes recherches.

Peut-être quelqu'un a-t-il une idée ?

--

Amitiés.
Jacques ELKINE

6 réponses

1 2
Avatar
Anacoluthe
Bonjour !

'Jacques ELKINE' nous a écrit ...
Une variante de la variante : utiliser la propriété : Hast Peint Date
Si elle est renseignée, c'est que l'original a déjà été imprimé.

Gloup ! gloup ! Là je suis noyé... Cherché la propriété Hast Peint Date,

sans succès.


Geo parlait évidemment de la propriété 'Last Print Date' :-D

En vba: ActiveDocument.BuiltInDocumentProperties("Last Print Date")

Faut l'excuser : en vue de son prochain déplacement chez les AMIS
de Marseille il s'entraîne sérieusement au pastis... !!!

Bon dimanche !

Anacoluthe
« La plupart des hommes ont comme les plantes
des propriétés cachées. »
- François Duc de LA ROCHEFOUCAULD


Avatar
Jacques ELKINE

Geo parlait évidemment de la propriété 'Last Print Date' :-D

En vba: ActiveDocument.BuiltInDocumentProperties("Last Print Date")

Faut l'excuser : en vue de son prochain déplacement chez les AMIS
de Marseille il s'entraîne sérieusement au pastis... !!!

Bon dimanche !

Merci pour le "décoquillage" et joyeuses rencontre marseillaies.

--

Amitiés.
Jacques ELKINE

Avatar
Geo

Bonjour !

'Jacques ELKINE' nous a écrit ...
Une variante de la variante : utiliser la propriété : Hast Peint Date
Si elle est renseignée, c'est que l'original a déjà été imprimé.

Gloup ! gloup ! Là je suis noyé... Cherché la propriété Hast Peint Date, sans succès.



Geo parlait évidemment de la propriété 'Last Print Date' :-D


Vi, j'ai même pas l'excuse de la proximité des touches du clavier.

--
A+



Avatar
Geo

Là t'est un tout petit peu trop technique pour moi... Je n'ai pas retrouvé dans mes
documents VBA. Si tu as un instant, je serais très heureux de m'instruire sur
l'incrémentation d'un compteur et les variables de document. Mais je veux pas déranger.


On peut utiliser une propriété du document ou même en ajouter une, par
exemple :
ActiveDocument.CustomDocumentProperties.Add _
Name:="Copie", LinkToContent:úlse, _
Value:="0", Type:=msoPropertyTypeString

Selon la recommandation de Guy, il vaut mieux travailler en chaîne de
caractères.
Dans la fonction d'impression on peut tester la valeur :
if ActiveDocument.CustomDocumentProperties("Copie") = "0" then
' Original
Activedocument.print
ActiveDocument.CustomDocumentProperties("Copie") = "1"
Else
' Duplicata
...
endif

Ou mieux pour l'incrémentation :
Dim NumCopie as integer

Numcopie = val(ActiveDocument.CustomDocumentProperties("Copie"))
if numcopie = 0 then
' Original
Activedocument.print
Else
' Duplicata
...
endif
numcopie = numcopie +1
ActiveDocument.CustomDocumentProperties("Copie") = trim(str(numcopie))

Comme on ne peut pas "créer" une propriété qui existe déjà, il est
prudent de l'effacer avant:
On error resume next
ActiveDocument.CustomDocumentProperties("Copie").Delete
On Error GoTo 0

NB je n'ai pas testé, ce code précisément,
il peut donc y avoir des fautes de frappe ;o)

Il y a un autre type de solution dans la faq :
http://faqword.free.fr/articles.php?lng=fr&pgc6

--
A+

Avatar
Jacques ELKINE
..............


NB je n'ai pas testé, ce code précisément,
il peut donc y avoir des fautes de frappe ;o)

Il y a un autre type de solution dans la faq :
http://faqword.free.fr/articles.php?lng=fr&pgc6

Merci, merci, merci à Geo et Anacoluthe.


J'y retournbe immédiatement (Boris Vian)

--

Amitiés.
Jacques ELKINE

Avatar
Ayrton [ASC]
Bonjour*Jacques ELKINE*
Dans ton message de news :%, tu
nous envoyais cete missive :-(*)
1 2