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 :

Sélectionner un objet qui se trouve dans une zone de dessin


Sujet :

VBA Word

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 1
    Points
    1
    Par défaut Sélectionner un objet qui se trouve dans une zone de dessin
    Bonjour

    j'ai réalisé une macro VBA sous word2013 qui me permet de faire:
    mise en forme de paragraphe: interligne 0, espacements, alignement du texte...
    mise en forme de l'objet: marges de 0com intérieur haut, gauche, bas, droit

    la macro fonctionne à merveille lorsque je dessine une forme que j'écrive du texte à l'intérieure
    mais dès que la forme est à l'intéreur d'une zone de dessin, elle ne marche plus
    Nom : 2015-10-12_111623.jpg
Affichages : 668
Taille : 21,9 Ko
    ci-joint le code que j'ai réalisé.
    Merci d'avance


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    Sub LibeleFigures()
    'Aligner le texte des les libélés des figures
    ' Marges des Zones de texte Sélectionnées
    ' paragraphes: aligments + espacements
     
    'Ci-dessous' code pour ajouter de la couleur
       'Selection.ShapeRange.Fill.ForeColor.RGB = RGB(255, 255, 255)
     
    'Arrière plan supprimé
       Selection.ShapeRange.Fill.Visible = msoFalse
     
    'paramètres du texte dans la forme
     
     Selection.ShapeRange.TextFrame.MarginBottom = 0
     Selection.ShapeRange.TextFrame.MarginLeft = 0
     Selection.ShapeRange.TextFrame.MarginRight = 0
     Selection.ShapeRange.TextFrame.MarginTop = 0
     Selection.ShapeRange.TextFrame.VerticalAnchor = msoAnchorMiddle
     
    'Mise en forme de paragraphe
      With Selection.ParagraphFormat
            .LeftIndent = CentimetersToPoints(0)
            .RightIndent = CentimetersToPoints(0)
            .SpaceBefore = 0
            .SpaceBeforeAuto = False
            .SpaceAfter = 0
            .SpaceAfterAuto = False
            .LineSpacingRule = wdLineSpaceSingle
            .Alignment = wdAlignParagraphCenter
            .WidowControl = True
            .KeepWithNext = False
            .KeepTogether = False
            .PageBreakBefore = False
            .NoLineNumber = False
            .Hyphenation = True
            .FirstLineIndent = CentimetersToPoints(0)
            .OutlineLevel = wdOutlineLevelBodyText
            .CharacterUnitLeftIndent = 0
            .CharacterUnitRightIndent = 0
            .CharacterUnitFirstLineIndent = 0
            .LineUnitBefore = 0
            .LineUnitAfter = 0
            .MirrorIndents = False
            .TextboxTightWrap = wdTightNone
            .CollapsedByDefault = False
        End With
     '
    End Sub

  2. #2
    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,

    Sur quelle ligne ?
    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 !

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    Bonjour
    J ai des problèmes sur les lignes qui traitent de:
    Selection.ShapeRange.TextFrame...

    C comme ci les formes à l'intérieur des zones de dessin étaient inaccessibles.

  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,
    Un coup d'œil dans ton aide de VBA t'aurait fait voir que ShapeRange, c'est la collection des objets Shape, présents dans ta selection. Ton TextFrame, doit être lié à la zone de texte qui se trouve dans la shape précise.
    À 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
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    Bonjour.
    J'avais regardé l'aide, cherché sur internet mais j'avais du mal à comprendre comment s'organisent les choses.
    1- comment savoir une forme à quelle type elle appartient et
    2- pourquoi autant de Shape: ShapeRange; inlineShapes, Shape ?!

    Donc si j'ai bien compris, pour accéder à la zone de texte je doit passer par la zone de dessin.
    Si c'est le cas, je n'ai aucune idée de la manière de procédé.

    J'ai fait une capture d’écran pour synthétiser au mieux ma démarche entreprise précédemment.
    Je travail sous Word2013

    Nom : 2015-10-17_082647.jpg
Affichages : 744
Taille : 62,3 Ko

  6. #6
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    bonsoir
    vraiment personne n'a rencontré ce problème?

  7. #7
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut



    Bonjour,

    un exemple peut-être dans la discussion faire clignoter une forme inserée dans un doc word



    _____________________________________________________________________________________________________
    Je suis Charlie, Bardo, Sousse
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

  8. #8
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2015
    Messages : 5
    Points : 1
    Points
    1
    Par défaut
    Dans activedocument.shapes (1)...
    C est la première forme du document actif qui est sélectionnée (1). Dans mon cas la forme je la sélectionne avec la souris.

  9. #9
    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,

    Là, ton histoire de souris mélange tout.

    Tu fais quoi exactement avant de lancer ta macro ?

    Est-ce que ta zone de texte est sélectionnée avec tout ton document ou séparément ?

    Ou bien Est-ce que tu veux que le texte de la zone de texte, et uniquement le texte de la zone de texte soit mis en forme ?

    Est-ce que tu as une et une seule zone de texte, ou plusieurs zones de texte ?
    Et puis, si tu dois faire cela constamment avec une cargaison de fichiers, cela irait bien mieux avec des styles adaptés, ou carrément avec un modèle dédié. Il n'y a aucune obligation d'utiliser le modèle Normal.

    Mais bon, prends le temps de reformuler ton problème complètement et précisément.

    Et puis laisse donc faire, sélectionner ton texte pour cliquer sur un bouton pour changer directement le style, ou pour lancer une macro, cela revient au même.
    À 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.

Discussions similaires

  1. appler un controle qui se trouve dans une autre form
    Par mstic dans le forum Windows Forms
    Réponses: 18
    Dernier message: 06/05/2007, 19h11
  2. Réponses: 2
    Dernier message: 12/06/2006, 12h35
  3. Acceder à un object qui se trouve dans une autre classe
    Par ceres02 dans le forum AWT/Swing
    Réponses: 8
    Dernier message: 08/02/2006, 13h29
  4. [C#]Comment executer du code qui se trouve dans une string ?
    Par freddyboy dans le forum Windows Forms
    Réponses: 4
    Dernier message: 28/02/2005, 16h31
  5. Afficher une image JPG qui se trouve dans une bdd
    Par Harry dans le forum Bases de données
    Réponses: 6
    Dernier message: 27/02/2004, 10h51

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