次の方法で共有


Page.DropLinked メソッド (Visio)

データ レコードセットのデータにリンクされている図面ページの新しい図形を返します。

注:

この Visio オブジェクトまたはメンバーは Visio Professional 2013 のライセンス ユーザーのみが使用できます。

構文

DropLinked( _ObjectToDrop_ , _x_ , _y_ , _DataRecordsetID_ , _DataRowID_ , _ApplyDataGraphicAfterLink_ )

Page オブジェクトを返す式。

パラメーター

名前 必須 / オプション データ型 説明
ObjectToDrop 必須 [不明] ドロップするオブジェクトです。 これは通常、 MasterShapeSelection オブジェクトなどの Visio オブジェクトです。 IDataObject インターフェイスを提供する任意の OLE オブジェクトを指定できます。
x 必須 Double 図形の幅の中央位置の x 座標、または PinX です。
y 必須 Double 図形の高さの中央位置の y 座標、または PinY です。
DataRecordsetID 必須 Long リンクするデータを含むデータ レコードセットの ID です。
DataRowID 必須 Long リンクするデータを含むデータ行の ID です。
ApplyDataGraphicAfterLink 必須 ブール型 (Boolean) リンクされた図形に現在のデータ グラフィックを適用するかどうかを指定します。 既定では、データ グラフィックを適用しません。 詳細については、「備考」を参照してください。

戻り値

Shape

注釈

図形が含まれていないか、リンクする図形以外の図形を含む図形が図面ページ上のデータに既にリンクされている図形を作成する場合は、 Page.DropLinked メソッドと Page.DropManyLinkedU メソッドを使用して、既にデータにリンクされている 1 つ以上の追加の図形を作成できます。 これらのメソッドは、ページ上の指定した場所に追加の図形を作成するという点で、既存の Page.Drop メソッドと Page.DropManyU メソッドに似ています。ただし、新しい図形と指定したデータ レコードセット内の指定されたデータ行の間にリンクが作成されます。

ObjectToDrop パラメーターとして渡すオブジェクトが図形の場合、生成される図形の幅/高さボックスの中心は指定された座標に配置され、作成される図形を表す Shape オブジェクトが返されます。

ObjectToDrop が Master オブジェクトである場合、指定した座標にマスター シェイプの Pin が配置されます。 マスター シェイプの Pin は、多くの場合回転の中心になりますが、中心にならない場合もあります。

省略可能の ApplyDataGraphicsAfterLink パラメーターとして True を渡すと、現在の図面で最後に他の図形に適用されたデータ グラフィックを適用します。

次の Microsoft Visual Basic for Applications (VBA) マクロは、DropLinked メソッドを使用して、ページ座標 (2, 2) で中央に揃え、アクティブな図面に最後に追加されたデータ レコードセットのデータ行にリンクされた図形を、アクティブな図面ページに作成する方法を示します。

DropLinked メソッドに渡される図形は、基本図形 (米国単位) ステンシルの単純な四角形です。 このマクロを実行する前に、 DataRecordsets.Add メソッドまたは別の方法を使用して 、DataRecordsets コレクションに少なくとも 1 つのデータ レコードセットを追加し、Visio 図面ウィンドウで [基本図形 (US 単位)] ステンシルが開いていることを確認します。 この例で、データ行の ID は 1 に設定されています。コードを実行する前に該当するデータ行が存在するかどうか確認し、なければコード中の ID 値を変更してください。

Public Sub DropLinked_Example() 
 
    Dim vsoShape As Visio.Shape 
    Dim vsoMaster As Visio.Master 
    Dim dblX As Double 
    Dim dblY As Double  
    Dim lngDataRowID As Long 
    Dim vsoDataRecordset As Visio.DataRecordset 
    Dim intRecordsetCount As Integer 
 
    intRecordsetCount = Visio.ActiveDocument.DataRecordsets.Count 
    Set vsoDataRecordset = Visio.ActiveDocument.DataRecordsets(intRecordsetCount) 
     
    Set vsoMaster = Visio.Documents("Basic_U.VSS").Masters("Rectangle") 
    dblX = 2 
    dblY = 2 
    lngDataRowID = 1 
 
    Set vsoShape = ActivePage.DropLinked(vsoMaster, dblX, dblY, vsoDataRecordset.ID, lngDataRowID, True) 
 
End Sub

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。