Page. ShapeIDsToUniqueIDs-Methode (Visio)Page.ShapeIDsToUniqueIDs method (Visio)

Gibt ein Array mit eindeutigen IDs von Shapes auf dem Zeichenblatt zurück, wie durch ihre Shape-IDs angegeben.Returns an array of unique IDs of shapes on the page, as specified by their shape IDs.

SyntaxSyntax

Ausdruck.expression. ShapeIDsToUniqueIDs( _ShapeIDs()_ , _UniqueIDArgs_ , _GUIDs()_ )

Ausdruck Ein Ausdruck, der ein Page -Objekt zurückgibt.expression An expression that returns a Page object.

ParameterParameters

NameName Erforderlich/OptionalRequired/Optional DatentypData type BeschreibungDescription
ShapeIDs ()ShapeIDs() ErforderlichRequired LongLong Ein Array vom Typ Long von Shape-IDs, der einem Satz von Shapes auf dem aktiven Zeichenblatt entspricht.An array of type Long of shape IDs corresponding to a set of shapes on the active drawing page.
UniqueIDArgsUniqueIDArgs ErforderlichRequired VisUniqueIDArgsVisUniqueIDArgs Ruft ab, löscht oder macht die eindeutige ID eines Shape -Objekts.Gets, deletes, or makes the unique ID of a Shape object. Mögliche Werte finden Sie in den Hinweisen.See Remarks for possible values.
GUIDs ()GUIDs() ErforderlichRequired StringString Ausgabeparameter.Out parameter. Ein leeres Array, das von der Methode mit eindeutigen IDs vom Typ String gefüllt wird, die den in ShapeIDs angegebenen Formen entsprechen ()An empty array that the method fills with unique IDs of type String corresponding to the shapes specified in ShapeIDs()

RückgabewertReturn value

NichtsNothing

BemerkungenRemarks

Microsoft Visio identifiziert Shapes anhand von zwei verschiedenen IDs: Shape-IDs und eindeutigen IDs.Microsoft Visio identifies shapes by two different IDs: shape IDs and unique IDs. Shape-IDs sind numerische Werte, durch die Shapes innerhalb des Bereichs eines einzelnen Zeichenblatts eindeutig identifiziert werden.Shape IDs are numeric and uniquely identify shapes within the scope of an individual drawing page. In Bezug auf einen größeren Bereich sind sie jedoch nicht eindeutig.They are not unique within a wider scope, however.

Eindeutige IDs sind GUIDs (Globally Unique Identifier).Unique IDs are globally unique identifiers (GUIDs). Sie sind innerhalb des Anwendungsbereichs eindeutig.They are unique within the scope of the application.

Zum Konvertieren zwischen Shape-IDs und eindeutigen IDs können Sie zwei Methoden des Page -Objekts, ShapeIDsToUniqueIDs und UniqueIDsToShapeIDs, verwenden.To convert between shape IDs and unique IDs, you can use two methods of the Page object, ShapeIDsToUniqueIDs and UniqueIDsToShapeIDs.

Standardmäßig verfügt ein Shape nicht über eine eindeutige ID.By default, a shape does not have a unique ID. Ein Shape erhält nur dann eine eindeutige ID, wenn Sie seine Shape. UniqueId -Eigenschaft festlegen.A shape acquires a unique ID only if you set its Shape.UniqueID property. Wenn ein Shape-Objekt eine eindeutige ID besitzt, hat kein anderes Shape in irgendeinem Dokument dieselbe ID.If a Shape object has a unique ID, no other shape in any other document will have the same ID.

Mit dem Parameter UniqueIDArgs wird das Verhalten der UniqueId -Eigenschaft für alle Formen in ShapeIDs () festgelegt und gesteuert.The UniqueIDArgs parameter sets and controls the behavior of the UniqueID property for all the shapes in ShapeIDs(). UniqueIDArgs-Parameter sollten einen der folgenden Werte aufweisen, die in der Visio-Typbibliothek in VisUniqueIDArgs deklariert sind.UniqueIDArgs should have one of the following values declared in the Visio type library in VisUniqueIDArgs.

KonstanteConstant WertValue BeschreibungDescription
visGetGUIDvisGetGUID 00 Gibt die eindeutige ID-Zeichenfolge nur dann zurück, wenn das Shape bereits über eine eindeutige ID verfügt.Returns the unique ID string only if the shape already has a unique ID. Andernfalls wird eine leere Zeichenfolge ("") zurückgegeben.Otherwise it returns a zero-length string ("").
visGetOrMakeGUIDvisGetOrMakeGUID 11 Gibt die eindeutige ID-Zeichenfolge des Shapes zurück.Returns the unique ID string of the shape. Wenn das Shape noch keine eindeutige ID besitzt, wird ihm eine zugewiesen, bevor die neue ID zurückgegeben wird.If the shape does not yet have a unique ID, it assigns one to the shape and returns the new ID.
visDeleteGUIDvisDeleteGUID 22 Löscht die eindeutige ID eines Shapes und gibt eine leere Zeichenfolge ("") zurück.Deletes the unique ID of a shape and returns a zero-length string ("").
visGetOrMakeGUIDWithUndovisGetOrMakeGUIDWithUndo 33 Gibt die eindeutige ID-Zeichenfolge des Shapes zurück.Returns the unique ID string of the shape. Wenn das Shape nicht bereits über eine eindeutige ID verfügt, wird der Form eine zugewiesen, und die neue ID wird zurückgegeben.If the shape does not already have a unique ID, assigns one to the shape and returns the new ID. Undoable.Undoable.
visDeleteGUIDWithUndovisDeleteGUIDWithUndo 44 Löscht die eindeutige ID eines Shapes und gibt eine Zeichenfolge der Länge NULL ("") zurück.Clears the unique ID of a shape and returns a zero-length string (""). Undoable.Undoable.

BeispielExample

Mit dem folgenden VBA-Makro (Microsoft Visual Basic for Applications) wird gezeigt, wie die ShapeIDsToUniqueIDs -Methode verwendet wird, um die eindeutigen IDs der Shapes auf der Seite zu ermitteln, die an die Methode übergeben werden.The following Microsoft Visual Basic for Applications (VBA) macro shows how to use the ShapeIDsToUniqueIDs method to determine the unique IDs of the shapes on the page passed to the method. Sie durchläuft alle Shapes auf dem aktiven Zeichenblatt mithilfe der Shape. UniqueId -Eigenschaft, um die Shape-IDs der Shapes abzurufen, und übergibt dann ein Array dieser IDs an die ShapeIDsToUniqueIDs -Methode als ShapeIDs () -Parameter an Rufen Sie die eindeutigen IDs der Shapes ab.It iterates through all the shapes on the active drawing page, using the Shape.UniqueID property to get the shape IDs of the shapes, and then passes an array of those IDs to the ShapeIDsToUniqueIDs method as the ShapeIDs() parameter to get the unique IDs of the shapes. Für den UniqueIDArgs-Parameter übergibt er den Wert visGetOrMakeGUID, der Visio mitteilt, eine eindeutige ID für alle Formen zu erstellen, die noch nicht über eine verfügen.For the UniqueIDArgs parameter, it passes the value visGetOrMakeGUID, telling Visio to create a unique ID for any shape that doesn't already have one. Die eindeutigen IDs und Shape-IDs werden im Direktfenster gedruckt.It prints the unique IDs and shape IDs to the Immediate window.

Öffnen Sie vor dem Ausführen dieses Makros eine Visio-Zeichnung, und platzieren Sie mehrere Shapes auf dem aktiven Zeichenblatt.Before running this macro, open a Visio drawing and place several shapes on the active drawing page.

Public Sub ShapeIDsToUniqueIDs_Example()
    Dim vsoShape As Visio.Shape 
    Dim intArrayCounter As Integer 
     
    intShapeCount = ActivePage.Shapes.Count 
     
    ReDim alngShapeIDs(intShapeCount - 1) As Long 
    ReDim astrUniqueIDs(intShapeCount - 1) As String 
     
    intArrayCounter = 0 
         
    For Each vsoShape In ActivePage.Shapes 
        alngShapeIDs(intArrayCounter) = vsoShape.ID 
        Debug.Print alngShapeIDs(intArrayCounter) 
        intArrayCounter = intArrayCounter + 1 
    Next 
     
    ActivePage.ShapeIDsToUniqueIDs alngShapeIDs, visGetOrMakeGUID, astrUniqueIDs 
     
    intArrayCounter = 0 
     
    For intArrayCounter = LBound(astrUniqueIDs) To UBound(astrUniqueIDs) 
        Debug.Print astrUniqueIDs(intArrayCounter) 
    Next 
 
End Sub

Support und FeedbackSupport and feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation?Have questions or feedback about Office VBA or this documentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.