|
Publicité ' | ||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Inscription : juillet 2004 Messages : 27 ![]() |
Bonjour et bonne année à vous
Voilà, j'ai un document word rtf généré par matlab, qui me crée une table des matières mais à priori il n'utilise une table des matières word puisqu'aucun objet TableofContents n'existe dans le document. Le problème que suite à des modifications dans le document, cette table des matières n'est plus à jour pour les numéros de pages. J'ai donc trouver qu'il existe des objets hyperliens mais je n'ai pas trouvé de méthode pour les mettre à jour parmi celles proposées. Je cherche donc un moyen de mettre à jour tous mes hyperliens (si possible avec une seule commande pour m'évitez de faire une boucle for). |
|
|
00
|
|
|
#2 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 358 ![]() |
En général, ce sont des champs qui sont utilisés pour les tables des matières.
Si tu pouvais mettre un exemple sur le forum, il serait plus aisé de déterminer les actions à prendre. La solution serait de supprimer ce qui existe pour en mettre une nouvelle et éviter une boucle.
__________________
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 | ||
|
Futur Membre du Club
![]() Inscription : juillet 2004 Messages : 27 ![]() |
Je ne suis pas sur de bien comprendre ce que tu me suggères.
Voici un exemple de fichier où je dois modifier la table des matières car les liens ne sont pas à jour. Quand j'utilise je fais Code :
Par contre Doc.Hyperlinks.Count me retourne 31. L'idée que j'avais était donc de mettre à jour chacun de ces hyperliens comme ça je suis sur que ma table des matières est à jour aprés. Mais je n'ai pas trouver de méthodes pour mettre à jour les hyperliens. |
||
|
|
00
|
|
|
#4 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 358 ![]() |
Je viens de faire le tour de ton fichier et c'est normal que la table des matières ne soit pas mise à jour, elle ne contient pas d'entrées.
Pour qu'une table des matières puisse être construite, il faut que l'on retrouve soit des titres, soit des styles repris comme entrée de table des matières. Dans ton fichier, on ne retrouve ni l'un ni l'autre. Ce qui serait possible de faire, c'est convertir en titre les paragraphes avec numérotation.
__________________
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 |
|
Futur Membre du Club
![]() Inscription : juillet 2004 Messages : 27 ![]() |
Ca ne risque pas de changer ma mise en page de changer les paragraphes avec numérotation en titre?
En plus il me semble que la numérotation n'est aps faite par word mais que c'est une numérotation "à la main" en texte simple. Ensuite je vois que les codes champ utiliser pour la table des matières sont du type suivant: Ne pourrais t'ont pas récupérer le numéro de la page où se trouve la cible du lien hypertexte? Car de ce que j'ai vu les liens hypertexte, malgré le fait qu'ils ne donnent pas les bons nuémros de page, pointent bien au bon endroit dans le document. Enfin ne connaissant pas bien word ça me semble plus simple. |
|
|
00
|
|
|
#6 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 358 ![]() |
Si on change le style, on ne change pas la numérotation.
Je vais faire un essai.
__________________
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
|
|
|
#7 | ||
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 358 ![]() |
Après essai sur le fichier fournis
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
|
|
|
#8 | ||
|
Futur Membre du Club
![]() Inscription : juillet 2004 Messages : 27 ![]() |
J'essai de tester mais je rencontre actuellement des problèmes pour modifier le style du paragraphe avec Matlab.
Voici la ligne de code et l'erreur que j'obtiens si jamais tu as une idée: Citation:
Citation:
|
||
|
|
00
|
|
|
#9 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 358 ![]() |
Mon code est pour Word, pas pour MatLab.
Pour MatLab, il est préférable de poster dans forum MatLab.
__________________
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
|
|
|
#10 |
|
Futur Membre du Club
![]() Inscription : juillet 2004 Messages : 27 ![]() |
Oups oui j'ai oublié de préciser mais je commande word avec un serveur activeX lancé sous matlab.
Je demande aussi ici car de ce que j'ai pu voir de mes précédentes questions, les utilisateurs de matlab n'utilise pas beaucoup ces possibilités de matlab. |
|
|
00
|
|
|
#11 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 358 ![]() |
Jamais vu ! Si tu as Word, lance mon code sous Word.
__________________
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
|
|
|
#12 | ||
![]() ![]() Inscription : novembre 2006 Messages : 12 932 ![]() |
Désolé de polluer le forum Office avec mes interventions MATLAB mais c'est ActiveX le coupable
![]() Voila comment je m'en suis sorti sous MATLAB et les styles prédéfinis de Word (1er paragraphe en style "Titre 1"): Code Matlab :
Le 130ème style correspond à "Titre 1" (Word en français) Vous en pensez quoi ? => http://www.developpez.net/forums/sho...d.php?t=467105
__________________
• Mes contributions MATLAB (R2009a - Windows & Linux) • J'étais le meilleur ami que le vieux Jim avait au monde. Il fallait choisir. J'ai réfléchi un moment, puis je me suis dit : "Tant pis ! J'irai en enfer" (Saint Huck) • Des larmes coulèrent doucement des yeux fermés du vieil homme. Moi je pleurais comme un enfant, que d'ailleurs pour lui je ne cesserais d'être ma vie durant (Amkoullel) • Lâché de Mogwai sur St Malo... aie aie aie... ouille ouille ouille |
||
|
|
00
|
|
|
#13 |
|
Futur Membre du Club
![]() Inscription : juillet 2004 Messages : 27 ![]() |
Euh je ne sais pas comment exécuter du code sous word.
Par contre gràce tes suggestions j'ai réussi avec matlab à générer ma table des matières. |
|
|
00
|
|
|
#14 |
![]() ![]() ![]() Olivier LebeauContrôleur d'industrie Inscription : février 2006 Messages : 17 358 ![]() |
Merci Dut,
Je n'oserais pas dire que ce qui vient de toi est une pollution. Merci de ton intervention, ne connaissant pas MatLab, j'aurais eu beaucoup de mal.
__________________
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