Shape.UniqueID - свойство (Visio)

Получает, удаляет или создает идентификатор GUID, который однозначно идентифицирует фигуру в областях приложения. Только для чтения.

Синтаксис

выражение. UniqueID( _fUniqueID_ )

выражение Выражение, возвращающее объект Shape .

Параметры

Имя Обязательный или необязательный Тип данных Описание
fUniqueID Обязательный Integer Получает, удаляет или создает уникальный идентификатор объекта Shape . Возможные значения см. в примечаниях.

Возвращаемое значение

String

Примечания

Microsoft Visio идентифицирует фигуры по двум различным идентификаторам: идентификаторам фигур и уникальным идентификаторам. Идентификаторы фигур являются числовыми и однозначно идентифицируют фигуры в пределах областей отдельной страницы документа. Однако они не уникальны в более широкой области.

Уникальные идентификаторы — это GUID. Они уникальны в рамках областей приложения.

Для преобразования между идентификаторами фигур и уникальными идентификаторами можно использовать два метода объекта Page : ShapeIDsToUniqueID и UniqueIDsToShapeIDs.

По умолчанию у фигуры нет уникального идентификатора. Фигура может получить уникальный идентификатор только в том случае, если для нее задано свойство UniqueID .

Если у объекта Shape есть уникальный идентификатор, ни одна другая фигура в любом документе не будет иметь такой идентификатор.

Параметр fUniqueID управляет поведением свойства UniqueID . Он должен иметь одно из следующих значений, объявленных в библиотеке типов Visio в VisUniqueIDArgs.

Константа Значение Описание
visGetGUID 0 Возвращает строку уникального идентификатора, только если фигура уже имеет уникальный идентификатор. В противном случае возвращается пустая строка ("").
visGetOrMakeGUID 1 Возвращает строку уникального идентификатора фигуры. Если у фигуры еще нет уникального идентификатора, она назначает его фигуре и возвращает новый идентификатор.
visDeleteGUID 2 Удаляет уникальный идентификатор фигуры и возвращает пустую строку ("").
visGetOrMakeGUIDWithUndo 3 Возвращает строку уникального идентификатора фигуры. Если у фигуры еще нет уникального идентификатора, она назначает его фигуре и возвращает новый идентификатор. Невыполнимо.
visDeleteGUIDWithUndo 4 Очищает уникальный идентификатор фигуры и возвращает пустую строку (""). Невыполнимо.

Чтобы получить фигуру, если известен ее уникальный идентификатор, используйте метод Shapes.Item ( UniqueIDString).

Например, можно использовать следующий код:

Dim vsoShape As Visio.Shape 
Set vsoShape = Visio.ActivePage.Shapes.Item("{2287DC42-B167-11CE-88E9-0020AFDDD917}") 

Кроме того, можно использовать следующий код, который добавляет букву "С" перед строкой, чтобы идентифицировать его как уникальный идентификатор:

Dim vsoShape As Visio.Shape 
Set vsoShape = Visio.ActivePage.Shapes.Item("U{2287DC42-B167-11CE-88E9-0020AFDDD917}") 

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.