Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/01/2012, 10h59   #1
Candidat au titre de Membre du Club
 
Homme
Inscription : avril 2010
Messages : 131
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : avril 2010
Messages : 131
Points : 10
Points : 10
Par défaut table Of Contents test

Bonjour à tous,

J'aimerais savoir si vous vous étiez déjà poser ce genre de questions : est-ce qu'on peut en vba, tester la présence d'une ligne dans TablesOfContents (une table des matières)??

Merci et bonne journée!!
titou31000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 11h31   #2
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 345
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 345
Points : 29 255
Points : 29 255
Salut,

Pourrais-tu être plus clair ?

La TOC ne contient rien, elle va chercher ses "info" dans le différents niveaux qui sont les entrées;
Ces niveaux peuvent être des titres ou des styles particuliers choisis par l'utilisateur.
__________________
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 !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 24/01/2012, 11h35   #3
Candidat au titre de Membre du Club
 
Homme
Inscription : avril 2010
Messages : 131
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : avril 2010
Messages : 131
Points : 10
Points : 10
Salut,

Merci pour ta réponse.

En gros, je voudrais savoir si dans un document Word, on peut dire : "cette ligne est une ligne de la TOC"
titou31000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 11h38   #4
Modérateur
 
Homme Christophe CHAPAT
Spécialiste progiciel
Inscription : février 2010
Messages : 986
Détails du profil
Informations personnelles :
Nom : Homme Christophe CHAPAT
Âge : 26
Localisation : France, Haute Loire (Auvergne)

Informations professionnelles :
Activité : Spécialiste progiciel
Secteur : Service public

Informations forums :
Inscription : février 2010
Messages : 986
Points : 1 598
Points : 1 598
Envoyer un message via MSN à carden752
Bonjour,

Oui on peut le faire le contenu de la table des matières se trouve dans
Code :
ActiveDocument.TablesOfContents(1).Range.Text
Les numéros de pages sont séparés par une tabulation (code Ascii 9) et la prochaine ligne par un retour chariot (code Ascii 13)
__________________
Cordialement,
Christophe

Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche
carden752 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 24/01/2012, 11h45   #5
Candidat au titre de Membre du Club
 
Homme
Inscription : avril 2010
Messages : 131
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : avril 2010
Messages : 131
Points : 10
Points : 10
D'accord, je vais voir ce que je peux faire avec ça, si cela me convient.

Je te remercie!!

Bonne journée!!
titou31000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 16h04   #6
Candidat au titre de Membre du Club
 
Homme
Inscription : avril 2010
Messages : 131
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : avril 2010
Messages : 131
Points : 10
Points : 10
Re,

J'ai réussi à récupérer la table des matières grâce à

Code :
ActiveDocument.TablesOfContents.Item(1).Range.Text
mais je n'ai pas encore trouver pour tester la présence particulière d'une ligne dans cette table.
titou31000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2012, 17h27   #7
Modérateur
 
Homme Christophe CHAPAT
Spécialiste progiciel
Inscription : février 2010
Messages : 986
Détails du profil
Informations personnelles :
Nom : Homme Christophe CHAPAT
Âge : 26
Localisation : France, Haute Loire (Auvergne)

Informations professionnelles :
Activité : Spécialiste progiciel
Secteur : Service public

Informations forums :
Inscription : février 2010
Messages : 986
Points : 1 598
Points : 1 598
Envoyer un message via MSN à carden752
Bonjour,

Il suffit de tester le contenu de la table des matières et ta chaine avec la fonction Instr
Pour tester si ta chaine contient Developpez par exemple :
Code :
If InStr(1, ActiveDocument.TablesOfContents.Item(1).Range.Text, "Developpez", vbTextCompare) Then
Tutoriel sur les chaines de caractères
__________________
Cordialement,
Christophe

Merci de ne pas oublier de mettre résolu quand le sujet l'est. Cela aide tous les DVPnautes dans leur recherche
carden752 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 25/01/2012, 02h39   #8
Rédacteur/Modérateur
 
Avatar de Sepia
 
Homme JF Jousseaume
Inscription : octobre 2007
Messages : 2 390
Détails du profil
Informations personnelles :
Nom : Homme JF Jousseaume
Âge : 48
Localisation : France

Informations professionnelles :
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2007
Messages : 2 390
Points : 3 356
Points : 3 356
Salut titou31000,

Les ToC de Word sont basées sur des styles particuliers certes modifiables mais en général personne ne les change car sinon c'est source de mal de soucis. Donc partant de ce constat, en plus de la méthode de Carden752 qui va fonctionner, tu peux tester la présence de "ligne" par une recherche sur du texte concerné avec le style "Tm..." cela va te permettre aussi de tester ou de récupérer le niveau de hiérarchie de ta ligne, si tu en as besoin.

Une recherche c'est assez simple, parce que tu... recherches et que c'est une fonction fournie par le logiciel (et qui marche bien). En termes d'analyse de ta demande, je pense que c'est plus cohérent d'effectuer une recherche lorsqu'on recherche et un parcours, lorsque tu veux parcourir mais ce n'est qu'un point de vue. En plus, je préfère toujours déléguer à Word des fonctions lorsqu'elles existent plus que de redevelopper moi-même mais là encore c'est un point de vue.

@+
Sepia est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 25/01/2012, 08h59   #9
Candidat au titre de Membre du Club
 
Homme
Inscription : avril 2010
Messages : 131
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : avril 2010
Messages : 131
Points : 10
Points : 10
Bonjour,

Je vous remercie pour vos deux réponses. Les deux méthodes semblent intéressantes donc je vais les tester les deux!! Je vous tiendrais au courant!!

Bonne journée et merci encore!
titou31000 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 20h25.


 
 
 
 
Partenaires

Hébergement Web