Update des propriétés [VBA - Word] - VB/VBA/VBS - Programmation
Marsh Posté le 30-09-2003 à 10:27:35
quand tu imprimes, il le met à jour ce champ ou bien c'est pas à jour dans tous les cas?
quand on pense qu'il y a déjà un beau bug qui traîne dans la mise à jour des numéros de page style t'as un document avant fusion de deux pages, puis plus qu'une après fusion, ben il imprime "1/2" sachant que 2 représente le total de pages (foireux donc dans ce cas ci).
Marsh Posté le 30-09-2003 à 10:29:29
quand tu imprimes (ou même l'aperçu), il met effectivement à jour, ce qui nous a fait penser qu'il y avait une commande spécifique et non pas une magouille à réaliser
Marsh Posté le 30-09-2003 à 10:42:20
j'ai enregistré une macro pour voir mais j'obtiens Selection.Fields.Update (et bizarrement, il n'est pas possible de switcher entre le document et les header/footer pendant l'enregistrement d'une macro).
Marsh Posté le 30-09-2003 à 11:09:14
Qu'est ce que tu appelles 'mettre a jour' ?
(oui, suis pas bien reveillee..)
Marsh Posté le 30-09-2003 à 11:18:45
et bien si par exemple j'insère le champ "author" dans le document.
il me met la valeur.
si ensuite je change sa valeur, c'est toujours l'ancienne qui est sur le document.
c'est + clair?
Marsh Posté le 30-09-2003 à 11:19:41
t'as pas essayé de gerer ça avec des signets ?
Marsh Posté le 30-09-2003 à 11:24:01
Tu places ton signet sur ton doc word.
tu le nommes, et ensuite, tu fais un bout de code qui va insérer une valeur là ou tu as placé ton signet.
et ca fonctionne aussi pour les pieds de pages, entetes de pages !
Marsh Posté le 30-09-2003 à 11:25:46
ah ouais ca pourrait être la soluce, le problème c'est que je sais pas si on peut utiliser autre chose que les propriétés (utilisation par plusieurs personnes et applic).
je regarde avec mon collègue cet aprèm
Marsh Posté le 30-09-2003 à 11:35:50
tu me dis si tu veux le bout de code !
Marsh Posté le 30-09-2003 à 11:43:07
vais chercher...
ca donne un truc comme ça :
Code :
|
et après si par exemple tu as appellé dans ton doc word un signet 'author' et que tu veux lui attribuer la valeur 'Urd Sama' :
Code :
|
Marsh Posté le 19-07-2005 à 10:43:43
Page de 2 ans référencée dans les 1eres réponses de Google. Impressionnant! Suffisant pour justifier ce mega-up!
Je viens tout juste d'avoir le meme pb: le ActiveDocument.Fields.Update qui ne met pas à jour les entetes et pied de page.
J'ai trouvé la réponse complète sur http://www.dotnet247.com/247refere [...] 06189.aspx
Celle ci a l'avantage de mettre tout à jour, sans besoin de prédéfinir des signets
Code :
|
Marsh Posté le 06-10-2005 à 07:42:49
J'ai eu le même problème... mais je n'ai pas trouvé la même solution ! La mienne est plus simple mais doit avoir des limitation (s'il y a plusieurs entete / pied de pages par exemple)
[cpp]' Met à jour les champs dans le corps du document
Selection.WholeStory
Selection.Fields.Update
' Passe dans le bas de page
ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter
Selection.WholeStory
Selection.Fields.Update
' Passe dans l'entete
ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
Selection.WholeStory
Selection.Fields.Update
[/spoiler]
Marsh Posté le 30-09-2003 à 09:36:51
bonjour
Je vous explique le topo. J'insère dans mon document word des propriétés (exemple: Author). Il me mets la valeur de ce champ.
J'insère ce meme champ dans l'en-tete et le pied de page. Jusque là parfait. Je change la valeur de mon champ.
Je fais une petit macro avec pour code:
ActiveDocument.Fields.Update
(équivalent à clique droit - mettre à jour les champs).
Il me mets à jour les champs dans le document en lui-meme, mais pas dans l'en-tête et le pied de page. Existe-t-il une commande pour mettre à jour tous les champs du document en entier? ou doit-on magouiller pour faire le tour de toutes les "parties"?
merci pour votre aide