Shape.ProgID-Eigenschaft (Visio)
Gibt die programmgesteuerte ID eines Shapes zurück, das ein ActiveX-Steuerelement, ein eingebettetes oder verknüpftes Objekt darstellt. Schreibgeschützt.
Syntax
Ausdruck. ProgID
expression Eine Variable, die ein Shape-Objekt darstellt.
Rückgabewert
String
Hinweise
Die ProgID-Eigenschaft löst eine Ausnahme aus, wenn das Shape kein ActiveX-Steuerelement oder eingebettetes oder verknüpftes OLE 2.0-Objekt enthält. Ein Shape stellt ein ActiveX-Steuerelement, ein eingebettetes Objekt oder ein verknüpftes Objekt dar, wenn die ForeignType-Eigenschaft visTypeIsOLE2 im Wert zurückgibt.
Verwenden Sie die ProgID-Eigenschaft eines Shape- oder OLEObject-Objekts, um die ProgID des Objekts abzurufen. Jede OLE-Objektklasse speichert ihre ProgID in der Registrierung. In der Regel erfolgt dieses Speichern, wenn sich das Programm installiert, das das Objekt bedient. Clientprogramme verwenden diese ID zum Identifizieren des Objekts. Sie verwenden den Microsoft Visio-Bezeichner, wenn Sie eine Anweisung wie GetObject (,"Visio.Application") aus einem Microsoft Visual Basic-Programm ausführen.
Folgende Zeichenfolgen könnten von der ProgID zurückgegeben werden:
Visio.Drawing.5
MSGraph.Chart.5
Forms.CommandButton.1
Nachdem Sie mit der Object-Eigenschaft eines Shapes eine IDispatch-Schnittstelle zu dem Objekt abgerufen haben, das das Shape darstellt, können Sie die ClassID- oder ProgID-Eigenschaft des Shapes abrufen, um die von dieser Schnittstelle bereitgestellten Methoden und Eigenschaften zu bestimmen.
Beispiel
Dieses VBA-Makro (Microsoft Visual Basic für Applikationen) veranschaulicht, wie Sie die OLEObjects-Auflistung eines aktiven Zeichenblatts abrufen und die Eigenschaften ProgID und für jedes OLEObject-Objekt im Direktfenster anzeigen. Das Beispiel setzt voraus, dass das aktive Zeichenblatt mindestens ein eingebettetes oder verknüpftes OLE 2.0-Objekt oder ein ActiveX-Steuerelement enthält.
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
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.