Freigeben über


Page.UniqueIDsToShapeIDs-Methode (Visio)

Gibt ein Array von Form-IDs von Shapes auf dem Zeichenblatt zurück, wie durch ihre eindeutigen IDs angegeben.

Hinweis

Dieses Visio-Objekt oder dieses Visio-Mitglied ist nur für lizenzierte Benutzer von Visio Professional 2013 verfügbar.

Syntax

Ausdruck. UniqueIDsToShapeIDs( _GUIDs()_ , _ShapeIDs()_ )

Ausdruck Ein Ausdruck, der ein Page-Objekt zurückgibt.

Parameter

Name Erforderlich/Optional Datentyp Beschreibung
GUIDs() Erforderlich String Ein Array mit eindeutigen IDs vom Typ String für Shapes auf dem Zeichenblatt.
ShapeIDs() Erforderlich Long Ausgabeparameter. Ein leeres Array, das die Methode entsprechend den unter GUIDs() angegebenen Shapes mit den Shape-IDs vom Typ Long füllt.

Rückgabewert

Nichts

Bemerkungen

Microsoft Visio identifiziert Shapes anhand von zwei verschiedenen IDs: Shape-IDs und eindeutigen IDs. Shape-IDs sind numerische Werte, durch die Shapes innerhalb des Bereichs eines einzelnen Zeichenblatts eindeutig identifiziert werden. In Bezug auf einen größeren Bereich sind sie jedoch nicht eindeutig.

Eindeutige IDs sind GUIDs (Globally Unique Identifier). Sie sind innerhalb des Anwendungsbereichs eindeutig.

Zum Konvertieren zwischen Form-IDs und eindeutigen IDs können Sie zwei Methoden des Page-Objekts verwenden: ShapeIDsToUniqueIDs und UniqueIDsToShapeIDs.

Standardmäßig verfügt ein Shape nicht über eine eindeutige ID. Ein Shape erhält nur dann eine eindeutige ID, wenn Sie seine Shape.UniqueID-Eigenschaft festlegen.

Wenn ein Shape-Objekt eine eindeutige ID besitzt, hat kein anderes Shape in irgendeinem Dokument dieselbe ID.

Beispiel

Das folgende VBA-Makro (Microsoft Visual Basic for Applications) zeigt, wie die UniqueIDsToShapeIDs-Methode verwendet wird, um die Shape-IDs der Shapes auf dem Zeichenblatt zu bestimmen, die als eindeutige IDs an die Methode übergeben werden. Es durchläuft alle Shapes auf dem aktiven Zeichenblatt, wobei die UniqueID-Eigenschaft jedes Shapes verwendet wird, um die eindeutigen IDs der Shapes abzurufen. Anschließend werden diese eindeutigen IDs an die UniqueIDsToShapeIDs-Methode übergeben, um die Shape-IDs der Shapes zurückzugeben. Es druckt die eindeutigen IDs und Shape-IDs im Direktfenster.

Öffnen Sie vor dem Ausführen dieses Makros eine Visio-Zeichnung, und platzieren Sie mehrere Shapes auf dem aktiven Zeichenblatt.

Public Sub UniqueIDsToShapeIDs_Example() 
 
    Dim vsoShape As Visio.Shape 
    Dim intArrayCounter As Integer 
    Dim intShapeCount As Integer 
     
    intShapeCount = ActivePage.Shapes.Count 
     
    ReDim astrUniqueIDs(intShapeCount - 1) As String 
    ReDim alngShapeIDs(intShapeCount - 1) As Long 
     
    intArrayCounter = 0 
     
    For Each vsoShape In ActivePage.Shapes         
        astrUniqueIDs(intArrayCounter) = vsoShape.UniqueID(1) 
        Debug.Print astrUniqueIDs(intArrayCounter) 
        intArrayCounter = intArrayCounter + 1 
    Next 
    
    ActivePage.UniqueIDsToShapeIDs astrUniqueIDs, alngShapeIDs 
     
    intArrayCounter = 0 
 
    For intArrayCounter = LBound(alngShapeIDs) To UBound(alngShapeIDs) 
        Debug.Print alngShapeIDs(intArrayCounter) 
    Next 
 
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.