次の方法で共有


Page.CreateSelection メソッド (Visio)

さまざまな種類の Selection オブジェクトを作成します。

構文

expression. CreateSelection( _SelType_ , _IterationMode_ , _[Data]_ )

Page オブジェクトを表す変数。

パラメーター

名前 必須 / オプション データ型 説明
SelType 必須 VisSelectionTypes 選択の種類です。 設定可能な値については、「備考」を参照してください。
IterationMode 省略可能 VisSelectMode 使用する選択モードです。 設定可能な値については、「備考」を参照してください。
Data 省略可能 バリアント型 (Variant) 引数 SelType に対応するオブジェクトの種類です。 使用可能な値については備考を参照してください。

戻り値

Selection

注釈

CreateSelection メソッドを使用することにより、複雑な選択がプログラムで作成できます。 このため、ページですべての図形を選択する代わりに、たとえば、任意のレイヤーにある図形のみ選択したり、特定のマスター シェイプに基づく図形のみを選択できます。

SelTypevisSelTypeByType または visSelTypeByLayer と等しい CreateSelection メソッドを呼び出すことは、[Select byType] ダイアログ ボックスのオプションの選択と同じです ([ホーム] タブの [編集] グループで [選択] をクリックし、[種類で選択] をクリックします)。

SelType 引数は、Visio タイプ ライブラリの VisSelectionTypes で宣言されている次のいずれかの値である必要があります。

定数 説明
visSelTypeAll 1 初期状態で、すべての図形を含む選択範囲です。
visSelTypeByDataGraphic 6 初期状態で、適用されるデータ グラフィックの指定された型の図形をすべて含む選択範囲です。
visSelTypeByLayer 3 初期状態で、指定されたレイヤーの図形をすべて含む選択範囲です。
visSelTypeByMaster 5 初期状態で、指定されたマスター シェイプのインスタンス化された図形をすべて含む選択範囲です。
visSelTypeByRole 7 初期状態で、指定された役割の図形をすべて含む選択範囲です。
visSelTypeByType 4 初期状態で、指定されたタイプの図形をすべて含む選択範囲です。
visSelTypeEmpty 0 初期状態では、まったく図形が含まれない選択範囲です。
visSelTypeSingle 2 初期状態では、図形を 1 つ含む選択範囲です。

省略可能な引数 IterationMode は、Visio タイプ ライブラリの VisSelectMode で宣言されている次のいずれかの値になります。 既定値は visSelModeSkipSuper です。

定数 説明
visSelModeOnlySub &H0800 選択範囲からは下位選択された図形のみ報告されます。
visSelModeOnlySuper &H0200 選択範囲からは上位選択された図形のみ報告されます。
visSelModeSkipSub &H0400 選択範囲からは下位選択された図形が報告されません。
visSelModeSkipSuper &H0100 選択範囲からは上位選択された図形が報告されません。

省略可能な引数 Data は、SelType で指定したオブジェクトの種類に一致するオブジェクトになります。 たとえば、特定の種類のマスター シェイプをすべて選択する場合は、DataMaster タイプにします。 特定のレイヤーにあるマスター シェイプをすべて選択する場合は、DataLayer タイプにします。

SelTypevisSelTypeByRole の場合、DataVisRoleSelectionTypes 列挙型のメンバーである必要があります。

引数 SelTypevisSelTypeByType の場合、設定が可能な Data 値は、Visio タイプ ライブラリの VisTypeSelectionTypes で宣言されている次のいずれかの値になります。

定数 説明
visTypeSelBitmap 16 ビットマップの図形です。
visTypeSelGroup 1 別の図形が含まれている図形です。
visTypeSelGuide 4 ガイドの図形です。
visTypeSelInk 32 インクの図形です。
visTypeSelMetafile 8 メタファイルの図形です。
visTypeSelOLE 64 リンクされた図形、埋め込まれた図形、またはコントロールの図形です。
visTypeSelShape 2 ネイティブな Visio 図形です。

次の Microsoft Visual Basic for Applications (VBA) マクロは、CreateSelection メソッドを使用して、特定のレイヤー上のすべての図形を選択する方法を示します。 このマクロを実行する前に、"a" という名前のレイヤーと "b" という名前の 2 つのレイヤーを図面に作成し、両方のレイヤーに図形を追加します。

Public Sub CreateSelection_Layer_Example() 
 
 Dim vsoLayer As Visio.Layer 
 Dim vsoSelection As Visio.Selection 
 
 Set vsoLayer = ActivePage.Layers.ItemU("a") 
 Set vsoSelection = ActivePage.CreateSelection(visSelTypeByLayer, visSelModeSkipSuper, vsoLayer) 
 
 Application.ActiveWindow.Selection = vsoSelection 
 
End Sub

この VBA マクロは、 CreateSelection メソッドを使用して図面ページ上の特定の図形を選択する方法を示しています。 このマクロを実行する前に、[基本図形] ステンシルを開きます。

Public Sub CreateSelection_Page_Example() 
 
 Dim vsoSelection As Visio.Selection 
 Dim vsoShape As Visio.Shape 
 
 Application.ActiveWindow.Page.Drop Application.Documents("BASIC_U.VSS").Masters.ItemU("Rectangle"), 2, 9 
 Application.ActiveWindow.Page.Drop Application.Documents("BASIC_U.VSS").Masters.ItemU("Rectangle"), 5, 9 
 Application.ActiveWindow.Page.Drop Application.Documents("BASIC_U.VSS").Masters.ItemU("Rectangle"), 2, 7 
 
 Set vsoShape = ActivePage.Shapes(2) 
 Set vsoSelection = ActivePage.CreateSelection(visSelTypeSingle, visSelModeSkipSuper, vsoShape) 
 
 Application.ActiveWindow.Selection = vsoSelection 
 
 Debug.Print vsoShape.Name 
 
End Sub

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

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