Ошибка ссылки на ячейку ShapeSheet при использовании Shape.SetFormulas в Visio - PullRequest
0 голосов
/ 27 сентября 2018

Когда я пытаюсь использовать .SetFormulas для ссылки на формы коннектора на другой странице, я получаю #Name?ошибка.Ошибка может возникнуть как в Visio 2010, так и в 2016 году. Приведенный ниже код работает для кругов и сгруппированных фигур, но не для моих разъемов.

Dim formArray as String() = BuildFormulaArray(PreviousPageShapeIDs)
Dim theStream as Short() = StreamBuilder(CurrentShapeIDs, CustPropSection, Row, Cell)
Dim objArray as Object() = formArray.ConverToObject 'convenience function to convert each item to an object 

vPage.SetFormulas(theStream, objArray, VisGetSetArgs.visSetBlasGuards)

Однако приведенный ниже код работает с разъемами

For i = 0 to formArray.GetUpperBounds(0)
Dim streamInd as Integer = 4*i
vPage.Shapes(theStream(streamInd)).CellsSRC(theStream(streamInd+1),theStream(streamInd+2),theStream(streamInd+3)).FormulaForce = formArray(i)
Next

Моя формула ссылается на ячейки с использованием метода Pages [ PageName ]! Sheet. ShapeID ! CellName .

Я знаю, что могу сделатьэта работа с использованием CellsSRC или использованием имени формы в моей формуле, но я бы предпочел использовать SetFormulas и идентификаторы формы для соображений скорости.Любые идеи о том, почему Visio ведет себя непоследовательно?

...