InsertObject メソッド (Visio)Shape.InsertObject method (Visio)

ページ、マスター シェイプ、グループに、新しい埋め込みオブジェクトまたは ActiveX コントロールを追加します。Adds a new embedded object or ActiveX control to a page, master, or group.


expression.expression. InsertObject( _ClassOrProgID_ , _Flags_ )

Shape オブジェクトを表す変数を取得します。expression A variable that represents a Shape object.


名前Name 必須 / オプションRequired/Optional データ型Data type 説明Description
ClassOrProgIDClassOrProgID 必須Required StringString 作成するオブジェクトまたはコントロールの種類を指定します。Identifies the type of object or control to create.
FlagsFlags 必須Required 整数型 (Integer)Integer 操作を制御するフラグです。Flags that influence the operation.

戻り値Return value



ClassOrProgID は、作成するオブジェクトまたはコントロールの種類を表す文字列です。ClassOrProgID is a string that identifies the kind of object or control to create. 文字列形式で使用される、オブジェクトやコントロールのクラス ID (GUID)、またはクラスのハンドラーとして使用される、オブジェクトやコントロールのプログラム ID を指定します。It can be either the object or control's class ID (GUID) in string form or the object or control's program ID of the handler for the class.

  • _Classorprogid_がクラス ID を表す文字列の場合、"{D3E34B21-9D75-101A-8C3D-00AA001A1652}" のようになります。If ClassOrProgID is a string representing a class ID, it looks like "{D3E34B21-9D75-101A-8C3D-00AA001A1652}."

  • _Classorprogid_がプログラム ID を表す文字列の場合、"paint. picture" または "combobox. 1" のようになります。If ClassOrProgID is a string representing a program ID, it looks like "paint.picture" or "forms.combobox.1".

その他のアプリケーションで提供されるオブジェクトやコントロールと、クラス ID やプログラム ID の関連付けを確認するには、ベンダーが提供するマニュアルまたはレジストリを参照してください。See vendor-specific documentation or browse the registry to determine which class IDs and program IDs are associated with objects and controls provided by other applications.

_Flags_引数はビットマスクであり、次の値のいずれかを含めることができます。The Flags argument is a bitmask that can include one of the following values.

定数Constant Value 説明Description
visInsertIconvisInsertIcon &H10&H10 新しい図形をアイコンとして表示します。Displays the new shape as an icon.
visInsertDontShowvisInsertDontShow &H1000&H1000 新しいオブジェクトの show 動詞を実行しません。Does not execute the new object's show verb.

VisInsertIconvisInsertDontShowの両方が指定されている場合、 InsertObjectメソッドは失敗します。If both visInsertIcon and visInsertDontShow are specified, the InsertObject method fails. アイコンとして表示されるオブジェクトを挿入するには、アプリケーションでオブジェクトの show 動詞を実行できるようにする必要があります。If you want to insert an object that is displayed as an icon, you must allow the application to execute the object's show verb.

_Flags_引数には、次のいずれかの値を指定することもできます。The Flags argument can also include one of the following values.

定数Constant Value
visInsertAsControlvisInsertAsControl &H2000&H2000
visInsertAsEmbedvisInsertAsEmbed &H4000&H4000

VisInsertAsControlおよびvisInsertAsEmbed内の値は、クラスまたは_progid_で識別されるクラスが、挿入可能なコントロールとしてレジストリで識別される場合にのみ効果があります。Values in visInsertAsControl and visInsertAsEmbed only have an effect if the class identified by ClassOrProgID is identified in the registry as a control that can be inserted. visInsertAsControlvisInsertAsEmbed のどちらも指定せず、オブジェクトがコントロールまたは埋め込みオブジェクトのいずれかである場合、オブジェクトはコントロールとして挿入されます。If neither visInsertAsControl nor visInsertAsEmbed is specified and the object can be either a control or an embedded object, the application inserts it as a control.

以前のバージョンの Visio では、同じ呼び出しに対して応答が行われる場合、埋め込みオブジェクトが挿入されていましたが、Visio 5.0 以降のバージョンでは、コントロールが挿入される場合があります。In rare cases, Visio 5.0 or later versions may insert a control whereas earlier versions of Visio would have responded to the same call by inserting an embedded object. コントロールが挿入された場合、このメソッドは図面を設計モードで開くため、図面で実行するすべてのコードは図面が実行モードに戻るまで一時停止します。If a control is inserted, this method places the document in design mode, causing any code executing in the document to halt until the document is returned to run mode.


ActiveX コントロールをアプリケーションに追加する場合は、十分に注意してください。Use caution when you are adding ActiveX controls to your application. ActiveX コントロールの設計により、その使用がセキュリティ リスクをもたらす場合があります。ActiveX controls may be designed in such a way that their use could pose a security risk. 信頼できる発行元のコントロールのみ使用することをお勧めします。We recommend that you use controls from trusted sources only. 作成したコントロールに署名します。Sign any controls that you author.


任意の方法で、レジストリエディターまたはプログラムによって Windows レジストリを変更すると、常に何らかのリスクが生じます。Modifying the Windows registry in any manner, whether through the Registry Editor or programmatically, always carries some degree of risk. 変更が不適切な場合、オペレーティング システムの再インストールが必要になるなどの問題が起きる場合があります。Incorrect modification can cause serious problems that may require you to reinstall your operating system. コンピューターのレジストリの修正の際には、常にあらかじめバックアップをとるようにしてください。It is a good practice to always back up a computer's registry first before modifying it.

サポートとフィードバックSupport and feedback

Office VBA またはこの説明書に関するご質問やフィードバックがありますか?Have questions or feedback about Office VBA or this documentation? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。Please see Office VBA support and feedback for guidance about the ways you can receive support and provide feedback.