Ошибка ссылки на ячейку ShapeSheet при использовании Shape.SetFormulas в Visio

Когда я пытаюсь использовать.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

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

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

0 ответов

Другие вопросы по тегам