Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Evolution des styles de document d'un modèle.

15 réponses
Avatar
Bonjour à tous,

Ceux qui veulent bien m'aider mais veulent lire vite iront à ==>

Grâce à l'esprit (au singulier mais dieu sait qu'il est pluriel) de ce forum, je me sers de Word au quotidien depuis plus d'un an.

J'ai ainsi plus de 1000 documents basées sur le modèle normal (finalement) et au fur et à mesure que j'ajoute des documents je crée
de nouveau style. Ces derniers me sont utile (entre autre ?) pour faire des recherches.
Seulement si je retourne dans les premiers documents et que pour rendre mes recherches sur "archives" [de moins d'un an bof] plus
pertinentes, je veux utiliser les styles les plus récents ! malheureusement ils n'y sont pas dans les anciens documents. :-(((

Les nouveaux styles sont bien dans normal.dot puisque lorsque je les créer et hop coche "ajouter au modèle"=> ça monte au modèle,
mais pour faire redescendre au fichier ancien je n'y arrive pas aisément.

J'ai lu la Faq, je me suis arrêter sur la note (http://faq.ms.word.free.fr/Forme/forme_rep.htm/) : "Lorsque j'attache un modèle à
mon document par le menu Outils/ Modèles et compléments, aucune mise à jour ne s'effectue dans mon document qui possède ces styles.
Pourquoi ? "
[désolé j'ai pas trouvé l'index direct].
Cependant la coche "Mise à jour automatique des styles de document" doit s'occuper si je comprends bien des styles existant et
modifié. Ceci tel que je l'ai testée et selon ce qu'elle semble indiquer.

==> Comment recopier les styles dans des documents anciens, tous basés sur normal.dot. Sachant que normal.dot contient bien les
styles à copier ; mais que ces styles n'existait pas dans les documents d'origine ni dans le normal.dot au moment ou les document en
question ont été créer.
J'espère que c'est sans macro les AMIS, car si c'était le cas ce serait à la limite de mes compétence en la matière, je crains donc
la galère en perspective.

Merci de toute contribution.
Merci d'avoir lu jusque là.

5 réponses

1 2
Avatar
Bonsoir à tous,
Bonsoir et merci à toi Geo,

Magique comme dirait Circé.
AutoOpen
Impec !

Il suffit qu'un modèle soit dans le répertoire de démarrage
Nickel ! (j'y ai mis une copie du normal.dot.) => il est bien dans la zone démarrage de l'ensemble de mes fichiers

Tiens j'ai encore appris quelque chose.

Bon j'étais près à copier régulièrement mon normal.dot des modèles vers le répertoire de démarrage :-)! mais pour mes fichiers dont
la zone modèle de document est grisé (de la fenêtre outils/modèle de document)
cela ne fait pas plus apparaître mes styles :-(!!!!

N'ayant pas pensé du départ à faire une macro pour cela et te connaissant pour un AMI converti et averti, le verrou psychologique de
la macro est passé, pour ma part ça ne règle pas mes problèmes du fait au minimum de mon manque de pratique en la matière.

J'ai pensé à copier mes styles par macro dans mes documents sur autoopen mais voilà comme souvent dans les macros je tourne, je
tourne...
Pour l'instant j'en suis là :
Sub Autoopen()
dim atentry as style ' AtEntry car j'ai pompé le code sur l'aide de organizercopy... (mais le nom de la variable ne doit pas
l'influencé n'est ce pas.
for Each atentry in normaltemplate
application.OrganizerCopy
Source:=NormalTemplate.FullName,_
Destination:¬tiveDocument.FullName, Name:=AtEntry, _
Object:=wdOrganizerobjectStyles
Next atentry
End Sub

ça bloque sur : for Each atentry in normaltemplate
Propriété ou méthode non gérée par l'objet (alors qu'en débogage ça passe !)
De plus j'y mettrais volontié
for Each atentry in normaltemplate.Styles à l'image de for Each atentry in normaltemplate.AutoTextEntries
mais ce qui est vrai pour AutoTextEntries n'est pas vrai pour Styles ça m'embête bien et je me demande bien pourquoi puisque dans la
fenêtre organisé ils sont au même plan.
Bref c'est comme dans notre région aujourd'hui : le brouillard.

Merci de toute contribution.
Merci d'avoir lu jusque là.

Avatar
Geo
Bonjour @pollo,


Regarde dans l'aide :
CopyStylesFromTemplate,

Tu fais un mixte des deux exemples ça devrait marcher.

Ben oui le VBA n'est pas toujours logique.

A+
Avatar
Bonsoir Geo,

Bonjour @pollo
le blues du dimanche soir te fais déjà penser être demain ?


Ben oui le VBA n'est pas toujours logique.
Tabarouette tu me rassures presque moi qui me savais déjà pas logique voilà que je n'ai pas le même illogisme que le vba ! ça m'aide

pas !

Je revenais sur mon fil pour indiquer que Jocaste et quelques autres macroteurs célèbre et valable car très réticent Anacoluthe et
Guy Moncomble semble avoir fait chou blanc en début d'année dernière http://minilien.com/?Ta6AgK1x24

En tout cas tu me donnes une nouvelle piste :
CopyStylesFromTemplate,
Je teste et je te tiens au courant.


Au moins toi, je le sais depuis plus d'un an tu trouve l'aide de word logique, en tout cas tu y trouve ton chemin.

Merci encore vraiement en tout cas.

Merci d'avoir lu jusque là.

Avatar
Bonsoir à tous,
Bonsoir et merci à toi Geo,

Vraiment Impec, chapeau bas !

Code très simple et efficace :
ActiveDocument.CopyStylesFromTemplate _
Template:¬tiveDocument.AttachedTemplate.FullName

Je l'ai tester sur une autre machine que celle où j'ai mes fameux fichier et dans le cas général, ça marche.
Je teste sur mes fameux fichier demain, je crains que comme ils n'ont aucun modèle d'attaché il faille au moins adapté...
De Jocaste j'avais appris pas mal de choses, notament qu'apparament il faut parcourir les styles par type !
Mais en plus je tombais sur le même problème bizarement ce code est interdit
'"Documents.Open FileName:=NormalTemplate

'"Adaptation de Jocaste
'"Sub CopyStyles()
'"Dim StyleInDocument As Style
'"Dim StyleArray As Variant
'"Dim Index As Long

'"Documents.Open FileName:=NormalTemplate
'"ReDim StyleArray(ActiveDocument.Styles.Count)
'"Index = 0
'"For Each StyleInDocument In ActiveDocument.Styles
'" StyleArray(Index) = ActiveDocument.Styles(StyleInDocument).NameLocal
'" Index = Index + 1
'"Next StyleInDocument

'"ActiveDocument.Close

'"For Index = 0 To UBound(StyleArray, 1) - 1
'" Application.OrganizerCopy Source:=NormalTemplate, Destination:¬tiveDocument, Name:=StyleArray(Index),
Object:=wdOrganizerObjectStyles
'" Application.OrganizerCopy Source:=NormalTemplate, Destination:¬tiveDocument, Name:=StyleArray(1),
Object:=wdOrganizerObjectStyles
'" Application.OrganizerCopy Source:=NormalTemplate, Destination:¬tiveDocument, Name:=StyleArray(2),
Object:=wdOrganizerObjectStyles
'" Application.OrganizerCopy Source:=NormalTemplate, Destination:¬tiveDocument, Name:=StyleArray(3),
Object:=wdOrganizerObjectStyles
'"Next Index

Merci encore.
Merci d'avoir lu jusque là.
Avatar
Geo
Bonjour @pollo,

En tout cas tu me donnes une nouvelle piste :
CopyStylesFromTemplate,
Je teste et je te tiens au courant.



En fait je suis passé par l'explorateur d'objet,
c'est l'outil idéal pour qui sait bien servir
ce n'est pas mon cas mais ça m'aide parfois.

En cherchant "Styles" comme toi puisque ça paraissait logique ;
je suis tombé là-dessus,
et de là je suis passé à l'aide.

Si ça peut t'aider une autre fois.

A+


1 2