Freigeben über


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.