Share via


Propiedad Document.ProgID (Visio)

Devuelve el identificador de programación de una forma que representa un control ActiveX, un objeto incrustado o un objeto vinculado. Solo lectura.

Sintaxis

expresión. Progid

Expresión Variable que representa un objeto Document .

Valor devuelto

Cadena

Comentarios

La propiedad ProgID genera una excepción si la forma no representa un control ActiveX o un objeto incrustado o vinculado OLE 2.0. Una forma representa un control ActiveX, un objeto incrustado o un objeto vinculado si la propiedad ForeignType devuelve visTypeIsOLE2 en el valor.

Use la propiedad ProgID de un objeto Shape u OLEObject para obtener el identificador de programación del objeto. Todas las clases de objetos OLE almacenan un identificador de programación propio en el Registro. Normalmente, esto ocurre cuando el programa que sirve el objeto se instala a sí mismo. Los programas cliente usan este identificador para identificar el objeto. Está usando el identificador de Microsoft Visio al ejecutar una instrucción como GetObject (,"Visio.Application") desde un programa de Microsoft Visual Basic.

La propiedad ProgID podría devolver cadenas como estas:

 
Visio.Drawing.5 
MSGraph.Chart.5 
Forms.CommandButton.1 

Después de utilizar la propiedad Object de una forma para obtener una interfaz IDispatch del objeto que representa la forma, puede obtener las propiedades ClassID o ProgID de la forma para determinar los métodos y las propiedades que suministra dicha interfaz.

Ejemplo:

Esta macro de Microsoft Visual Basic para aplicaciones (VBA) muestra cómo obtener la colección OLEObjects de una página activa e imprimir la propiedad ProgID de cada objeto OLEObject en la ventana Inmediato. En este ejemplo se da por hecho que la página activa contiene al menos un objeto incrustado o vinculado OLE 2.0 o un control ActiveX.

 
Public Sub ProgID_Example() 
 
 Dim intCounter As Integer 
 Dim vsoOLEObjects As Visio.OLEObjects 
 
 'Get the OLEObjects collection of the active page. 
 Set vsoOLEObjects = ActivePage.OLEObjects 
 
 'Step through the OLEObjects collection. 
 For intCounter = 1 To vsoOLEObjects.Count 
 Debug.Print vsoOLEObjects(intCounter).ProgID 
 Next intCounter 
 
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.