Propriedade Shape.ProgID (Visio)
Retorna o identificador programático de uma forma que representa um controle ActiveX, um objeto incorporado ou um objeto vinculado. Somente leitura.
Sintaxe
expression. ProgID
Expressão Uma variável que representa um objeto Shape .
Valor de retorno
Cadeia de caracteres
Comentários
A propriedade ProgID cria uma exceção quando a forma não representa um controle ActiveX ou um objeto OLE 2.0 incorporado ou vinculado. Uma forma representa um controle ActiveX, objeto incorporado ou objeto vinculado quando a propriedade ForeignType retorna o valor visTypeIsOLE2.
Use a propriedade ProgID de um objeto Shape ou OLEObject para obter o identificador programático do objeto. Cada classe de objeto OLE armazena um identificador programático para si própria no registro. Normalmente, isso ocorre quando o programa que atende esse objeto se instala. Os programas clientes utilizam esse identificador para identificar o objeto. Você está usando o identificador do Microsoft Visio ao executar uma instrução como GetObject ("Visio.Application") de um programa do Microsoft Visual Basic.
Estas são as sequências que a propriedade ProgID pode retornar:
Visio.Drawing.5
MSGraph.Chart.5
Forms.CommandButton.1
Depois de usar a propriedade Object de uma forma para obter uma interface IDispatch no objeto que a forma representa, você pode obter a propriedade ClassID ou ProgID da forma para determinar os métodos e propriedades fornecidos por essa interface.
Exemplo
Esta macro do VBA (Microsoft Visual Basic for Applications) mostra como obter a coleção OLEObjects de uma página ativa e imprimir na janela Immediate a propriedade ProgID de cada objeto OLEObject. O exemplo pressupõe que a página ativa contenha pelo menos um objeto OLE 2.0 incorporado ou vinculado ou um controle 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
Suporte e comentários
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.