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

Verknüpft mehrere Zeilen im angegebenen Datenrecordset (wie durch die Datenzeilen-IDs festgelegt) mit mehreren Shapes auf dem Zeichenblatt und wendet die aktuelle Datengrafik optional auf die verknüpften Shapes an.Links multiple rows in the specified data recordset, as specified by their data row IDs, to multiple shapes on the page, and optionally applies the current data graphic to the linked shapes.

Hinweis

Dieses Visio-Objekt oder dieses Visio-Mitglied ist nur für lizenzierte Benutzer von Visio Professional 2013 verfügbar.This Visio object or member is available only to licensed users of Visio Professional 2013.

SyntaxSyntax

Ausdruck.expression. LinkShapesToDataRows( _DataRecordsetID_ , _DataRowIDs()_ , _ShapeIDs()_ , _ApplyDataGraphicAfterLink_ )

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
DataRecordsetIDDataRecordsetID ErforderlichRequired LongLong Die ID eines Datenrecordsets im aktuellen Dokument, das die zu verknüpfenden Daten enthält.The ID of a data recordset contained in the current document containing the data to link to.
DataRowIDs()DataRowIDs() ErforderlichRequired LongLong Ein Array vom Typ Long von Datenzeilen-IDs von Zeilen im Datenrecordset, das in der DataRecordset-ID angegeben ist und mit den in ShapeIDs () angegebenen Formen verknüpft werden soll.An array of type Long of data row IDs of rows in the data recordset specified in DataRecordsetID, to be linked to the shapes specified in ShapeIDs().
ShapeIDs ()ShapeIDs() ErforderlichRequired LongLong Ein Array vom Typ Long von Shape-IDs der Shapes auf dem Zeichenblatt, das mit den in DataRowIDs () im Datenrecordset in DataRecordset-ID angegebenen Datenzeilen verknüpft werden soll.An array of type Long of shape IDs of shapes on the page to be linked to the data rows specified in DataRowIDs() in the data recordset specified in DataRecordsetID.
ApplyDataGraphicAfterLinkApplyDataGraphicAfterLink OptionalOptional Boolescher WertBoolean Gibt an, ob die aktuelle Datengrafik auf die verknüpften Shapes angewendet werden soll.Whether to apply the current data graphic to the linked shapes. Weitere Informationen finden Sie in den Anmerkungen.See Remarks for more information.

RückgabewertReturn value

NichtsNothing

BemerkungenRemarks

Indexpositionen der Shape-IDs in dem Array, das Sie für den ShapeIDs ()-Parameter übergeben, sollten der Indexposition im DataRowIDs ()-Array der IDs der Datenzeilen entsprechen, mit denen die Shapes verknüpft werden sollen.Index positions of the shape IDs in the array you pass for the ShapeIDs() parameter should correspond to the index position in the DataRowIDs() array of the IDs of the data rows to which you want the shapes to be linked. Das heißt, um die Form mit der ID 1 mit der Datenzeile mit der ID 10 zu verknüpfen, platzieren Sie beispielsweise die Shape-ID und die Datenzeilen-ID an derselben Arrayindex Position in den jeweiligen Arrays.That is, to link the shape with ID 1 to the data row with ID 10 , for example, place the shape ID and the data row ID in the same array index position in their respective arrays.

Wenn Visio keine Verknüpfung zwischen einem Shape und einer Datenzeile herstellen kann, wird dieses Shape übersprungen, und Visio fährt mit dem nächsten Shape im Array fort.If Visio cannot establish a link between a shape and a data row, Visio skips that shape and goes on to the next shape in the array. Nachdem Sie die-Methode ausgeführt haben, um festzustellen, ob alle Formen im Array tatsächlich mit den angegebenen Datenzeilen verknüpft sind, rufen Sie die Shape. GetLinkedDataRow -Methode für jede Form im Array auf.After you run the method, to determine if all shapes in the array are actually linked to the specified data rows, call the Shape.GetLinkedDataRow method on each shape in the array. Wenn bei dieser Methode für eins der Shapes ein Fehler auftritt, bedeutet dies, dass das Shape nicht mit der Datenzeile verknüpft ist.If that method fails for any shape, it indicates that the shape is not linked to the data row. In der Regel kann Visio eine Zeile mit einem Shape verknüpfen, es sei denn, das Shape ist bereits mit Daten verknüpft, und die Einstellung für das Link-Ersetzungs Verhalten für das Datenrecordset gibt an, dass der Link nicht ersetzt werden soll.Visio will usually succeed in linking a row to a shape unless the shape is already linked to data and the link-replacement-behavior setting for the data recordset specifies that the link should not be replaced.

Wenn Sie true für den optionalen ApplyDataGraphicAfterLink-Parameter übergeben oder keinen Wert für diesen Parameter übergeben, wendet Visio die vorhandene Datengrafik erneut auf Shapes an, für die bereits Datengrafiken angewendet wurden, bevor Sie die Methode aufgerufen haben.If you pass True for the optional ApplyDataGraphicAfterLink parameter, or if you do not pass a value for this parameter, Visio re-applies the existing data graphic to shapes that already had data graphics applied before you called the method. Auf Shapes ohne Datengrafik wendet Visio die Datengrafik an, die zuletzt auf ein anderes Shape im aktuellen Dokument angewendet wurde.For shapes that previously had no data graphic, Visio applies the data graphic most recently applied to any other shape in the current document.

BeispielExample

Das folgende VBA-Makro (Microsoft Visual Basic for Applications) zeigt, wie die LinkShapesToDataRows -Methode verwendet wird, um die ersten drei Shapes, die dem aktiven Zeichenblatt hinzugefügt wurden, mit Daten in den ersten drei Datenzeilen im zuletzt hinzugefügten Datenrecordset zu verknüpfen. an die **** DataRecordsets-Auflistung des aktuellen Dokuments.The following Microsoft Visual Basic for Applications (VBA) macro shows how to use the LinkShapesToDataRows method to link the first three shapes added to the active drawing page to data in the first three data rows in the data recordset most recently added to the DataRecordsets collection of the current document. Da für den optionalen letzten Parameter kein Wert übergeben wird, wendet das Makro die Datengrafik auch auf die verknüpften Shapes an.Because it does not pass a value for the optional final parameter, it also applies a data graphic to the linked shapes.

Öffnen Sie vor dem Ausführen dieses Makros eine neue Visio-Zeichnung, und verwenden Sie die DataRecordsets . Add -Methode oder eine andere Möglichkeit, der DataRecordsets-Auflistung mindestens ein Datenrecordset hinzuzufügen. ****Before running this macro, open a new Visio drawing and use the DataRecordsets.Add method or another means to add at least one data recordset to the DataRecordsets collection. Das zuletzt hinzugefügte Datenrecordset sollte mindestens drei Datenzeilen enthalten.The most recently added data recordset should contain at least three data rows. Fügen Sie dann dem Zeichenblatt mindestens drei Shapes hinzu.Then add at least three shapes to the drawing page.

Public Sub LinkShapesToDataRows_Example() 
 
    Dim vsoDataRecordset As Visio.DataRecordset 
    Dim intRecordsetCount As Integer 
    Dim alngDataRowIDs(0 To 2) As Long 
    Dim alngShapeIDs(0 To 2) As Long 
     
    alngShapeIDs(0) = 1 
    alngShapeIDs(1) = 2 
    alngShapeIDs(2) = 3 
     
    alngDataRowIDs(0) = 1 
    alngDataRowIDs(1) = 2 
    alngDataRowIDs(2) = 3 
         
    intRecordsetCount = Visio.ActiveDocument.DataRecordsets.Count 
    Set vsoDataRecordset = Visio.ActiveDocument.DataRecordsets(intRecordsetCount) 
     
    ActivePage.LinkShapesToDataRows vsoDataRecordset.ID, alngDataRowIDs, alngShapeIDs 
 
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.