2017-10-13 8 views
1

Dans Visio, j'essaie de modifier les coordonnées x et y de la forme. J'utilise le code suivantVisio Définir les coordonnées X et Y

VisioApp.ActiveWindow.Page.Shapes.Item(uniqueId).CellsSRC(visSectionObject, visRowXFormOut, visXFormPinX).FormulaForceU = "18 in" 
VisioApp.ActiveWindow.Page.Shapes.Item(uniqueId).CellsSRC(visSectionObject, visRowXFormOut, visXFormPinY).FormulaForceU = "-13.77 in" 

mais après l'exécution du code de la forme coordonne devient (14,25, -34,27). Le code change les coordonnées mais ne donne pas le résultat escompté. Une idée sur la façon de le réparer?

Répondre

1

De mon côté votre code fonctionne! Essayez de définir la variable forme

Dim sh forme Set sh = VisioApp.ActiveWindow.Page.Shapes.Item (UniqueID) sh.CellsSRC (visSectionObject, visRowXFormOut, visXFormPinX) .FormulaForceU = "18" sh .CellsSRC (visSectionObject, visRowXFormOut, visXFormPinY) .FormulaForceU = "-13,77 dans"

MISE à JOUR S'il vous plaît ouvrir la shapeshet de la page et vérifiez règle & Grille section enter image description here Si XRulerOrigin/YRulerOrigin n'est pas égal alors vous pouvez voir les coordonnées incorrectes pour les formes dans la fenêtre Taille & Position

enter image description here