2015-02-20 6 views
0

Фон: Новичок и программист VBA - будьте нежны, пожалуйста.Как использовать идентификатор формы из другого поля для определения beginX

Сценарий: Использование линейного соединителя Visio (2010); В настоящее время 1-Д Endpoints.BeginX выглядит следующим образом:

=PAR(PNT(Milestone.40!Connections.X1,Milestone.40!Connections.Y1)) 

То, что я: поле данных в той же форме, называемой BeginItem, который содержит идентификатор Visio (например, 87) из Milestone.40! выше.

Что мне нужно знать: Если это возможно, как изменить формулу в 1-D Endpoints.BeginX к чему-то вроде:

=PAR(PNT(BeginItemValue!Connections.X1,BeginItemValue!Connections.Y1)) 

и если не возможно, есть альтернативный способ делая это?

Спасибо!

+0

Не могли бы вы использовать форматирование кода (начать линию с четырьмя пробелами или поставить между кавычками)? Трудно прочитать ваш вопрос. – PatJ

+0

Я попробую - дай мне секунду - извини! – Wilhelm

+0

Помогает ли это? http://visguy.com/vgforum/index.php?topic=5806.0 – sasfrog

ответ

1

Спасибо за помощь всем. Сочетание всех советов привело меня к альтернативному решению.

Вместо того чтобы пытаться ссылаться на поле в Shapesheet, которое содержит BeginItemValue, я построил всю строку (в VBA), объединив детали, а затем обновил с ней значение BeginX.

shpObj.Cells("BeginX").Formula = "=PAR(PNT(" & BeginItemValue & "!Connections.X1," & BeginItemValue & "!Connections.Y1))" 

Это хорошо работает, хотя я уверен, что есть более простые способы сделать это.