Visio - récuperer les coordonnees des zones de texte

Signaler
Messages postés
9
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
24 juillet 2009
-
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
-
Bonjour,

Nous utilisons visio pour dessiner (juste positionner des champs de texte sur une interface) et je voudrais pouvoir lister tous les elements du document pour en extraire les coordonnes X et Y precises.

Avez- vous une idee pour realiser ceci en VB

Merci

3 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
74
Salut
Essaye ça et regarde les (pauvres) exemples de l'aide liée à chaque instruction, notamment le BoundingBox : La vache, s'ils avaient voulu faire compliqué, je ne sais pas ce qu'ils auraient pondus !

    Dim oPage As Visio.Page
    Dim r As Long
    Dim mLeft As Double, mRight As Double, mTop As Double, mBottom As Double
   
    Set oPage = ActiveDocument.Pages(1)
   
    For r = 1 To oPage.Shapes.Count
        With oPage.Shapes(r)
            .BoundingBox visBBoxDrawingCoords + visBBoxUprightWH, mLeft, mBottom, mRight, mTop
            Debug.Print .Text, _
                        Application.FormatResult(mLeft, "in", "cm", "#0.00 u"), _
                        Application.FormatResult(mRight, "in", "cm", "#0.00 u"), _
                        Application.FormatResult(mTop, "in", "cm", "#0.00 u"), _
                        Application.FormatResult(mBottom, "in", "cm", "#0.00 u")
        End With
    Next r

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
9
Date d'inscription
mardi 9 juin 2009
Statut
Membre
Dernière intervention
24 juillet 2009

Bonjour jack,

merci pour ta réponse cela correspond bien a mon besoin de lister les shapes de ma page.

Dans cette image http://dl.free.fr/qmhdv1WfE desole l utilitaire du forum pour inserer les photos est inacessible depuis mon ordinateur.

Donc dans cette image je ne voudrais recuperer que les shapes au fond blanc. Pensez vous que cŽest possible ?

JŽai un peu cherché sur ce sujet .BoundingBox et jŽai pas trouvé grand chose pour personnaliser cette commande.

Encore merci

Wil
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
74
BoundingBox ne renvoie que les positions.
Voir les autres méthodes pour récupérer les attributs du champ, genre .Font, .BackgroundColor ..., je suppose