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.