Visio:如何更改形状的位置?
Visio : How to change the position of a shape?
我想改变物体的X位置element.CellSRC
这是将 X 设置为 0.1 的代码,但我想将 X 从它的位置移动,而不仅仅是将 X 设置为绝对位置。
element.CellsSRC(visSectionObject, visRowXFormOut, visXFormPinX).FormulaForceU = "0.1 in"
你知道怎么做吗?非常感谢您
您需要获取以英寸为单位的值并将其加上 0.1:
float value = element.CellsSRC(visSectionObject, visRowXFormOut, visXFormPinX).Result["in"] + 0.1;
然后设置新值:
element.CellsSRC(visSectionObject, visRowXFormOut, visXFormPinX).Result["in"] = value;
(我不是 100% 掌握 VBA 语法,但应该可以帮助您)
由于 Paul Herber 的回答,它起作用了,但我只需要修改 2 行代码:
Value = element.CellsSRC(visSectionObject, visRowXFormOut, visXFormPinX).result("in") + 0.1
element.CellsSRC(visSectionObject, visRowXFormOut, visXFormPinX).result("in") = Value
你可以按照其他答案所说的那样做,尽管你会设置公式或 formulaforceu 而不是结果。
VBA 可怕的地方是你必须在设置公式时将其格式化为美国十进制表示,否则它会在具有不同十进制表示的国家/地区出现不良行为。我不记得了。所以小数总是有句点小数点分隔符。
无论如何,您也可以使用选择方法,其中您以编程方式 select 形状,然后调用 ActiveWindow.Selection.Move x,y
我想改变物体的X位置element.CellSRC 这是将 X 设置为 0.1 的代码,但我想将 X 从它的位置移动,而不仅仅是将 X 设置为绝对位置。
element.CellsSRC(visSectionObject, visRowXFormOut, visXFormPinX).FormulaForceU = "0.1 in"
你知道怎么做吗?非常感谢您
您需要获取以英寸为单位的值并将其加上 0.1:
float value = element.CellsSRC(visSectionObject, visRowXFormOut, visXFormPinX).Result["in"] + 0.1;
然后设置新值:
element.CellsSRC(visSectionObject, visRowXFormOut, visXFormPinX).Result["in"] = value;
(我不是 100% 掌握 VBA 语法,但应该可以帮助您)
由于 Paul Herber 的回答,它起作用了,但我只需要修改 2 行代码:
Value = element.CellsSRC(visSectionObject, visRowXFormOut, visXFormPinX).result("in") + 0.1
element.CellsSRC(visSectionObject, visRowXFormOut, visXFormPinX).result("in") = Value
你可以按照其他答案所说的那样做,尽管你会设置公式或 formulaforceu 而不是结果。 VBA 可怕的地方是你必须在设置公式时将其格式化为美国十进制表示,否则它会在具有不同十进制表示的国家/地区出现不良行为。我不记得了。所以小数总是有句点小数点分隔符。
无论如何,您也可以使用选择方法,其中您以编程方式 select 形状,然后调用 ActiveWindow.Selection.Move x,y