OVH Cloud OVH Cloud

Changement de Bac

77 réponses
Avatar
o.0
Est-ce que le changement de bac est censé être automatique sous Word
lorsqu'il y a un saut de section ?

7 réponses

4 5 6 7 8
Avatar
Circé
o.0 wrote:
|| http://pubs.logicalexpressions.com/Pub0009/LPMArticle.asp?ID1
||
|| étonné(e) ??

Hi hi hi !!!
Surtout que c'est le site d'une copine de la Grande Geo !!!!

|| on est pas les seuls ça fait plaisir.

Circé
http://faqword.free.fr
Avatar
Geo
Bonjour o.0


Le pb, c'est que en parcourant le répertoire où sont stockées les
docs, on peut se rendre compte que Marlène n'est pas la seule, il
faudrait donc mieux se baser sur MODELES (titre).


D'une part je n'ai aps trouvé comment
d'autre part tu as remarqué que dans le nom du répertoire il y avait
aussi "Marlène".
Donc même si on avait résolu le pb du modèle on reviendrait à la même
situation.
Reste plus qu'à ajouter des lignes du genre :
if ActiveDocument.BuiltInDocumentProperties(wdPropertyAuthor) <>
"Julie" then exit sub
if ActiveDocument.BuiltInDocumentProperties(wdPropertyAuthor) <>
"Alain" then exit sub
etc pour chaque opérateur.

Sinon utiliser une autre propriété comme la "company"
Pour lister toutes les propriétés du document :
Sub Listepropriétés()
Dim T As String
Dim p
For Each p In ActiveDocument.BuiltInDocumentProperties
On Error Resume Next
T = T & p.name & Chr(9) & p & Chr(13)
Next
MsgBox T
End Sub.


--

A+

Avatar
Geo
Bonjour o.0


OK sinon je n'arrive toujours pas à lancer la macro automatiquement
sur l'évènement "Imprimer"...

Les users râlent ici, zen ont marre de faire CRTL+qqchose ou F52
avant

d'imprimer.


Pfff ces utilisateurs, qui disait que l'informatique serait bien mieux
sans les utilisateurs ?
Sont mal habitués, vos utilisateurs, prête-les nous un peu, après un
stage dans la boite ils demanderont plus rien :-D

Alors je ne sais pas comment utiliser DocumentBeforePrint, j'ai bien
regardé des tutoriels mais bon....


Désolé mais c'est vraiment pas de la tarte,
mais voici la copie d'un courriel de Philippe Tulliez sur ce même
forum, le 18/2/2003.
Je viens d'essayer, ça marche bien, mais il faut suivre
scrupuleusement les indications, en particulier la macro
DocumentBeforePrint doit être dans le module de classe, ce sont les
listes déroulantes qui permettent de la générer.
Dedans on peut y mettre le code que tu as.
Et il faut créer d'autres macros dans le module (pas-de-classe).
La doc Microsoft est effectivement très légère sur le sujet.


--------------------Début de copie
Bonjour Wilfrid,
Voici une réponse de Frédéric Sigonneau sur ce Forum en juillet
2000, à
une question proche de la tienne.
Pour les versions 2000 & Supérieure d'après ce qu'il a ajouté.
Philippe

============= Réponse de Frederic Sigenneau - 26/07/2000 ============ Il n'y a pas en effet dans Word d'événement BeforePrint dans les
événements disponibles dans le module de code "ThisDocument". Dans
Excel, les événements de classeur et de feuilles sont bcp plus
nombreux
que ceux des documents dans Word.

L'application Word possède cependant un événement DocumentBeforePrint,
qui prend en paramètres une variable Doc (qui permet d'identifier un
document spécifique à traiter) et un booléen Cancel (qui permet
d'annuler éventuellement l'impression).

La procédure à suivre pour avoir accès aux événements de l'application
Word est assez simple. Il faut d'abord créer une nouvelle classe et y
déclarer une variable publique de l'application Word, avec le mot clé
WithEvents.
Dans Normal.dot, par exemple, insère un module de classe. Par défaut,
il
s'appelle Classe1. Dans ce module de classe, copie cette instruction :

Public WithEvents JDWord As Word.Application

Dès l'écriture de cette déclaration, tu peux sélectionner "JDWord"
dans
la liste en haut à gauche de la fenêtre de code, puis l'événement
"DocumentBeforePrint" en haut à droite qui va te fournir un squelette
de
procédure de ce type :

Private Sub JDWord_DocumentBeforePrint(ByVal Doc As Document, _
Cancel As Boolean)

End Sub

que tu peux utiliser pour écrire les traitements que tu veux appliquer
(à un document particulier ou à n'importe quel document) avant une
impression ou un aperçu avant impression.

Reste ensuite à initialiser ton JDWord. Pour cela, ajoute, toujours
dans
Normal.dot (si c'est dans Normal.dot que tu as créé ton module de
classe), un module standard et recopie le code suivant :

'Variable de la classe Classe1
Dim W As New Classe1

Sub Enregistrer_JDWord_Events()
Set W.JDWord = Word.Application
End Sub

Sub AutoExec()
Enregistrer_JDWord_Events
End Sub

Pour que ta variable JDWord soit disponible de suite, place le curseur
dans l'une ou l'autre des 2 procédures et appuie sur la touche F5.
Sinon, JDWord est initialisée au démarrage de Word avec la procédure
AutoExec.

Pour plus de renseignements sur le mot clé WithEvents, les modules de
classe et les événements de niveau Application, va faire un tour sur
le
site de Laurent Longre consacré à Excel (les principes sont exactement
les mêmes pour Word et pour Excel) : http://longre.free.fr

Bon courage
FS
©2003 Google
==================== 2ème ficelle sur le même sujet
================== J'oublie trop souvent de préciser que l'accès à une douzaine
d'événements de niveau application (dont DocumentBeforePrint) est une
nouveauté de Word 2000 (très intéressante à mon avis).
D'après ce que tu as trouvé chez toi, je pense que tu utilises Word 97
et dans ce cas je n'ai malheureusement aucune solution à te proposer.

Avatar
Geo
Bonjour Circé


o.0 wrote:
http://pubs.logicalexpressions.com/Pub0009/LPMArticle.asp?ID1

étonné(e) ??



Hi hi hi !!!
Surtout que c'est le site d'une copine de la Grande Geo !!!!


Mdr

mais je ne vois pas laquelle c'est,
elle est sur les photos de 2003 ?

--

A+



Avatar
Circé

Bonjour Circé


Hi hi hi !!!
Surtout que c'est le site d'une copine de la Grande Geo !!!!



Mdr

mais je ne vois pas laquelle c'est,
elle est sur les photos de 2003 ?


Sûrement!, elle fait plein de photos avec son mari Greg...
http://www.mousetrax.com/summit2003.html
http://www.mousetrax.com/summit2004.html

T"étais même en réunion avec elle l'an passé (elle était assise presque
à côté de toi...)
http://www.mousetrax.com/summit2004.html
http://faqword.free.fr/Prefix-WEB-Dir/?d=MVP%20Summit%202003&i=8

Circé




Avatar
Geo
Bonjour Circé



Sûrement!, elle fait plein de photos avec son mari Greg...
http://www.mousetrax.com/summit2003.html
http://www.mousetrax.com/summit2004.html

T"étais même en réunion avec elle l'an passé (elle était assise
presque à côté de toi...)
http://www.mousetrax.com/summit2004.html
http://faqword.free.fr/Prefix-WEB-Dir/?d=MVP%20Summit%202003&i=8



vi vi vi, j'avais cherché sur le nom de l'auteuse de l'article,
J'aurais lu Dian, j'aurais même pas cherché :-))))

--

A+

Avatar
o.0
Merci beaucoup je vais essayer ça.
pourquoi au fait.

Il y a un poste dedié ici à la reception des fameux docs et à leur
impression. Son utilisateur a enregistré les modifs après lancement de la
macro 'magik Geo'.
Du coup ça a foutu le bazar chez les autres...lors de la modif de ces docs
(sur les autres postes) la sélection de Bac1 bac2 ne se fait plus !!!

Finalement, soit il faut installer le BeforePrint sur tous les postes avec
la macros chargée de récupérer les variables spécifiques à chaque imprimante
(donc prévoir un déploiement sur le serveur et ça j'aime pas, suis faignant
par nature et encore est-ce bien faisable ?) soit spécifier à l'utilisateur
(non lui imposer) du poste dedié de ne pas enregistrer les modifs après
application de la macro sur les docs...c'est cette dernière solution qui me
paraît la plus sage.

Et oui les users ici sont très exigeants et très conservateurs...mais
finalement n'est-ce pas la même chose partout ?

"Geo" a écrit dans le message de
news:
Bonjour o.0


OK sinon je n'arrive toujours pas à lancer la macro automatiquement
sur l'évènement "Imprimer"...

Les users râlent ici, zen ont marre de faire CRTL+qqchose ou F52
avant

d'imprimer.


Pfff ces utilisateurs, qui disait que l'informatique serait bien mieux
sans les utilisateurs ?
Sont mal habitués, vos utilisateurs, prête-les nous un peu, après un
stage dans la boite ils demanderont plus rien :-D

Alors je ne sais pas comment utiliser DocumentBeforePrint, j'ai bien
regardé des tutoriels mais bon....


Désolé mais c'est vraiment pas de la tarte,
mais voici la copie d'un courriel de Philippe Tulliez sur ce même
forum, le 18/2/2003.
Je viens d'essayer, ça marche bien, mais il faut suivre
scrupuleusement les indications, en particulier la macro
DocumentBeforePrint doit être dans le module de classe, ce sont les
listes déroulantes qui permettent de la générer.
Dedans on peut y mettre le code que tu as.
Et il faut créer d'autres macros dans le module (pas-de-classe).
La doc Microsoft est effectivement très légère sur le sujet.


--------------------Début de copie
Bonjour Wilfrid,
Voici une réponse de Frédéric Sigonneau sur ce Forum en juillet
2000, à
une question proche de la tienne.
Pour les versions 2000 & Supérieure d'après ce qu'il a ajouté.
Philippe

============= Réponse de Frederic Sigenneau - 26/07/2000 ============ > Il n'y a pas en effet dans Word d'événement BeforePrint dans les
événements disponibles dans le module de code "ThisDocument". Dans
Excel, les événements de classeur et de feuilles sont bcp plus
nombreux
que ceux des documents dans Word.

L'application Word possède cependant un événement DocumentBeforePrint,
qui prend en paramètres une variable Doc (qui permet d'identifier un
document spécifique à traiter) et un booléen Cancel (qui permet
d'annuler éventuellement l'impression).

La procédure à suivre pour avoir accès aux événements de l'application
Word est assez simple. Il faut d'abord créer une nouvelle classe et y
déclarer une variable publique de l'application Word, avec le mot clé
WithEvents.
Dans Normal.dot, par exemple, insère un module de classe. Par défaut,
il
s'appelle Classe1. Dans ce module de classe, copie cette instruction :

Public WithEvents JDWord As Word.Application

Dès l'écriture de cette déclaration, tu peux sélectionner "JDWord"
dans
la liste en haut à gauche de la fenêtre de code, puis l'événement
"DocumentBeforePrint" en haut à droite qui va te fournir un squelette
de
procédure de ce type :

Private Sub JDWord_DocumentBeforePrint(ByVal Doc As Document, _
Cancel As Boolean)

End Sub

que tu peux utiliser pour écrire les traitements que tu veux appliquer
(à un document particulier ou à n'importe quel document) avant une
impression ou un aperçu avant impression.

Reste ensuite à initialiser ton JDWord. Pour cela, ajoute, toujours
dans
Normal.dot (si c'est dans Normal.dot que tu as créé ton module de
classe), un module standard et recopie le code suivant :

'Variable de la classe Classe1
Dim W As New Classe1

Sub Enregistrer_JDWord_Events()
Set W.JDWord = Word.Application
End Sub

Sub AutoExec()
Enregistrer_JDWord_Events
End Sub

Pour que ta variable JDWord soit disponible de suite, place le curseur
dans l'une ou l'autre des 2 procédures et appuie sur la touche F5.
Sinon, JDWord est initialisée au démarrage de Word avec la procédure
AutoExec.

Pour plus de renseignements sur le mot clé WithEvents, les modules de
classe et les événements de niveau Application, va faire un tour sur
le
site de Laurent Longre consacré à Excel (les principes sont exactement
les mêmes pour Word et pour Excel) : http://longre.free.fr

Bon courage
FS
©2003 Google
==================== 2ème ficelle sur le même sujet
================== > J'oublie trop souvent de préciser que l'accès à une douzaine
d'événements de niveau application (dont DocumentBeforePrint) est une
nouveauté de Word 2000 (très intéressante à mon avis).
D'après ce que tu as trouvé chez toi, je pense que tu utilises Word 97
et dans ce cas je n'ai malheureusement aucune solution à te proposer.




4 5 6 7 8