IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Word Discussion :

Comment savoir si un paragraphe quelconque, sans style particulier, commence par une puce ?


Sujet :

VBA Word

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Chef d'entreprise
    Inscrit en
    Avril 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef d'entreprise
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2014
    Messages : 5
    Points : 7
    Points
    7
    Par défaut Comment savoir si un paragraphe quelconque, sans style particulier, commence par une puce ?
    Bonjour

    Je bute sur une question toute simple, liée à une copie automatique à valeur ajoutée d'un document dans un autre
    document mieux structuré, et surtout MIEUX stylé !

    99% des utilisateurs de Word n'utilisent pas de Style, donc ils font leur listes à puces "à la volée".
    Quand je sélectionne le texte, par exemple par un code de ce type

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For each para in Activedocument.paragraphs
     
         para.Range.Select
     
    Next para
    je ne trouve pas le test à réaliser pour savoir si le paragraphe sélectionné possède une puce.

    Qqun a une idée ? Merci pour cela.

  2. #2
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Comment faire, je ne sais pas trop.

    J'ai regardé dans mon aide VBA (Word 2010) et j'ai fini par tomber sur cette page:

    ParagraphFormat2, membres de l’objet

    Il y a une propriété Bullet:

    Bullet Renvoie l’objet BulletFormat2 du paragraphe. En lecture seule.
    et l'objet en question à la page suivante:

    BulletFormat2, membres de l’objet
    mène à :

    Type Renvoie ou définit une constante qui représente le type de puce. En lecture-écriture.

    et finalement à

    Référence du développeur Office
    MsoBulletType, énumération
    Spécifie le type des puces.
    Nom Valeur Description
    msoBulletMixed -2 Valeur renvoyée uniquement ; indique une combinaison des autres états.
    msoBulletNone 0 Aucune puce.
    msoBulletNumbered 2 Puces numérotées.
    msoBulletPicture 3 Puces avec images.
    msoBulletUnnumbered 1 Puces non numérotées.

    © 2010 Microsoft Corporation. Tous droits réservés.
    Donc, théoriquement, en retrouvant le type de puce, on devrait découvrir s'il y a une puce ou non.

    Dur, dur, dur de suivre les programmeurs de Word et de VBA pour Word.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  3. #3
    Rédacteur/Modérateur

    Avatar de Heureux-oli
    Homme Profil pro
    Contrôleur d'industrie
    Inscrit en
    Février 2006
    Messages
    21 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : Belgique

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

    Informations forums :
    Inscription : Février 2006
    Messages : 21 087
    Points : 42 926
    Points
    42 926
    Par défaut
    Salut,

    Même si ce qui est écrit n'est pas faux, il y a une autre méthode.

    Si le paragraphe possède une puce, la propriété singlelist renvoie True.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveDocument.Paragraphs(1).Range.ListFormat.SingleList
    Renverra True si le paragraphe possède une puce et ce quelle que soit la puce et son niveau.
    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 !

  4. #4
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 904
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 904
    Points : 10 168
    Points
    10 168
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Citation Envoyé par Heureux-oli Voir le message
    Salut,

    Même si ce qui est écrit n'est pas faux
    Ouais, surtout que ni l'objet Paragraph, ni l'objet Selection ne supportent la propriété/objet ParagraphFormat2 (VBA Word 2010 en tout cas)

    Si le paragraphe possède une puce, la propriété singlelist renvoie True.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveDocument.Paragraphs(1).Range.ListFormat.SingleList
    Renverra True si le paragraphe possède une puce et ce quelle que soit la puce et son niveau.
    Merci pout le tuyau.
    À ma connaissance, le seul personnage qui a été diagnostiqué comme étant allergique au mot effort. c'est Gaston Lagaffe.

    Ô Saint Excel, Grand Dieu de l'Inutile.

    Excel n'a jamais été, n'est pas et ne sera jamais un SGBD, c'est pour cela que Excel s'appelle Excel et ne s'appelle pas Access junior.

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Chef d'entreprise
    Inscrit en
    Avril 2014
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Chef d'entreprise
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2014
    Messages : 5
    Points : 7
    Points
    7
    Par défaut En résumé
    En parallèle, j'ai fini par utiliser ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Type_Liste = para.Range.ListFormat.ListType
    Ça a marché aussi.

    Je confirme que ParagraphFormat2 n'est pas disponible dans VBA 2010.

    Je souscris au commentaire général : la gestion des puces est un cauchemar
    en VBA Word. Comme la gestion des paragraphes, aussi...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2010] Comment savoir s'il y a un message d'erreur dans une feuille à l'aide d'une formule ?
    Par brunop3165 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 15/05/2014, 23h31
  2. Réponses: 4
    Dernier message: 25/08/2011, 08h27
  3. Réponses: 2
    Dernier message: 26/05/2009, 14h24
  4. Réponses: 13
    Dernier message: 15/05/2009, 21h38
  5. Réponses: 3
    Dernier message: 10/12/2007, 23h28

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo