Método Page.UniqueIDsToShapeIDs (Visio)
Retorna uma matriz de IDs de forma de formas na página, conforme especificado por suas IDs exclusivas.
Observação
This Visio object or member is available only to licensed users of Visio Professional 2013.
expression. UniqueIDsToShapeIDs
( _GUIDs()_
, _ShapeIDs()_
)
Expressão Uma expressão que retorna um objeto Page .
Nome | Obrigatório/Opcional | Tipo de dados | Descrição |
---|---|---|---|
GUIDs() | Obrigatório | String | Uma matriz de identificações exclusivas do tipo String das formas na página. |
ShapeIDs() | Obrigatório | Long | Parâmetro externo. Uma matriz vazia preenchida pelo método com identificações de forma do tipo Long que correspondem às formas especificadas em GUIDs(). |
Nada
O Microsoft Visio identifica formas por meio de duas IDs diferentes: IDs de forma e IDs exclusivas. As IDs de Forma são numéricas e identificam as formas de maneira exclusiva no escopo de uma página de desenho individual. Entretanto, elas não são exclusivas em um escopo mais amplo.
As IDs exclusivas são GUIDs (identificadores globalmente exclusivos). Eles são exclusivos no escopo do aplicativo.
Para converter entre IDs de forma e IDs exclusivas, você pode usar dois métodos do objeto Page , ShapeIDsToUniqueIDs e UniqueIDsToShapeIDs.
Por padrão, uma forma não possui identificação exclusiva. Uma forma adquire uma ID exclusiva somente se você definir sua propriedade Shape.UniqueID .
Se um objeto Shape tiver uma identificação exclusiva, nenhuma outra forma em qualquer outro documento terá a mesma identificação.
A macro a seguir do Microsoft Visual Basic for Applications (VBA) mostra como usar o método UniqueIDsToShapeIDs para determinar as identificações das formas na página passadas para o método como identificações exclusivas. Ela itera em todas as formas na página de desenho ativa, usando a propriedade UniqueID de cada forma para obter as identificações exclusivas das formas. Em seguida, ele passa essas IDs exclusivas para o método UniqueIDsToShapeIDs para retornar as IDs de forma das formas. Ela imprime as identificações exclusivas e as identificações de forma na janela Immediate.
Antes de executar essa macro, abra um desenho do Visio e inclua várias formas na página de desenho ativa.
Public Sub UniqueIDsToShapeIDs_Example()
Dim vsoShape As Visio.Shape
Dim intArrayCounter As Integer
Dim intShapeCount As Integer
intShapeCount = ActivePage.Shapes.Count
ReDim astrUniqueIDs(intShapeCount - 1) As String
ReDim alngShapeIDs(intShapeCount - 1) As Long
intArrayCounter = 0
For Each vsoShape In ActivePage.Shapes
astrUniqueIDs(intArrayCounter) = vsoShape.UniqueID(1)
Debug.Print astrUniqueIDs(intArrayCounter)
intArrayCounter = intArrayCounter + 1
Next
ActivePage.UniqueIDsToShapeIDs astrUniqueIDs, alngShapeIDs
intArrayCounter = 0
For intArrayCounter = LBound(alngShapeIDs) To UBound(alngShapeIDs)
Debug.Print alngShapeIDs(intArrayCounter)
Next
End Sub
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.