Propiedad Shapes.ItemU (Visio)
Devuelve un objeto de una colección. Solo lectura.
Sintaxis
expresión. ItemU
( _NameUIDOrIndex_
)
expresión Variable que representa un objeto Shapes.
Parameters
Nombre | Obligatorio/opcional | Tipo de datos | Descripción |
---|---|---|---|
NameOrIndex | Obligatorio | Variant | Contiene el nombre universal, el identificador único o el índice del objeto que se va a recuperar. |
Valor devuelto
Forma
Comentarios
Puede recuperar un objeto de una colección Addons, Hyperlinks, Layers, Masters, MasterShortcuts, Pages, Shapes o Styles pasando el nombre del objeto como una expresión de cadena en un variant.
Si recupera un objeto Shape por nombre, la propiedad ItemU busca en todas las formas del patrón o la página que contiene la colección Shapes, además de hacerlo en la colección que contiene la forma. Por lo tanto, el objeto Shape devuelto por la propiedad ItemU puede ser una forma que no está en la colección Shapes.
También puede pasar la cadena de identificador único de un objeto Master o Shape a la propiedad ItemU. Por ejemplo:
objRet = vsoShapes.ItemU("{2287DC42-B167-11CE-88E9-0020AFDDD917}")
Si dicha cadena se pasa a la propiedad ItemU de una colección Shapes, se busca en todas las formas incluidas en la colección. No se busca en las formas de grupo dentro de la forma contenedora.
Para buscar en todas las formas de la colección, además de en las formas de los grupos y en la forma que contiene la colección, deberá incluir un asterisco (*) delante de la cadena de identificador único. Por ejemplo:
objRet = vsoShapes.ItemU("*{2287DC42-B167-11CE-88E9-0020AFDDD917}")
Ejemplo:
Esta macro de Microsoft Visual Basic muestra cómo utilizar la propiedad ItemU de la colección Pages para obtener la colección Shapes. A continuación, usa la propiedad ItemU de la colección Shapes para imprimir los nombres universales de todas las formas en Page-1 en la ventana Inmediato.
Para ejecutar esta macro, asegúrese de que el documento activo tiene formas en la página 1.
Public Sub ItemU_Example()
Dim intCounter As Integer
Dim intShapeCount As Integer
Dim vsoShapes As Visio.Shapes
Set vsoShapes = ActiveDocument.Pages.ItemU(1).Shapes
Debug.Print "Shapes in Document: "; ActiveDocument.Name
Debug.Print " on Page: "; ActiveDocument.Pages.ItemU(1).Name
intShapeCount = vsoShapes.Count
If intShapeCount > 0 Then
For intCounter = 1 To intShapeCount
Debug.Print " "; vsoShapes.ItemU(intCounter).Name
Next intCounter
Else
Debug.Print " No Shapes On Page"
End If
End Sub
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.