OLEObjects オブジェクト (Excel)
指定したワークシート上のすべての OLEObject オブジェクトのコレクション。
各 OLEObject オブジェクトは、ActiveX コントロール、リンクされた OLE オブジェクト、または埋め込まれている OLE オブジェクトを表します。
シートの ActiveX コントロールには、シートを表示するときに [名前] ボックスに表示できるコントロールを含む図形の名前と、コントロールのコード名の 2 つの名前があります。この名前は、プロパティ ウィンドウの [名前] の右側にあるセルに表示されます。
最初にコントロールをシートに追加すると、図形名とコード名が一致します。 ただし、図形名またはコード名を変更した場合、もう一方は自動的に一致するように変更されません。 ただし、後者は Excel バージョンで変更されたようです。 バージョン 16.0 では、どちらも一貫性が維持され、2 つのうちの 1 つを変更することはできません。
Worksheet オブジェクトの OLEObjects メソッドを使用して、OLEObjects コレクションを取得します。
次の使用例は、ワークシート 1 にあるすべての OLE オブジェクトを非表示にします。
Worksheets(1).OLEObjects.Visible = False
OLE オブジェクトを新しく作成し、OLEObjects コレクションに追加するには、Add メソッドを使用します。 次の使用例は、Arcade.bmp というビットマップ ファイルを表す OLE オブジェクトを新しく作成し、ワークシート 1 に追加します。
Worksheets(1).OLEObjects.Add FileName:="arcade.gif"
次の使用例は、ActiveX コントロール (リスト ボックス) を新しく作成し、ワークシート 1 に追加します。
Worksheets(1).OLEObjects.Add ClassType:="Forms.ListBox.1"
コントロールのイベント プロシージャの場合は、コントロールのコード名を使用します。 ただし、シートの Shapes または OLEObjects コレクションからコントロールを返す場合は、コード名ではなく図形名を使用して、名前でコントロールを参照する必要があります。 たとえば、コード名および図形の名前が既定の CheckBox1 というチェック ボックスを追加したと仮定します。 コントロールの [プロパティ] ウィンドウの [(名前)] に「chkFinished」と入力してコード名を変更した場合は、イベント プロシージャ名には必ず chkFinished を使用しますが、Shapes または OLEObject コレクションからコントロールを取得する場合は、次のように CheckBox1 を使用する必要があります。
Private Sub chkFinished_Click()
ActiveSheet.OLEObjects("CheckBox1").Object.Value = 1
End Sub
- Application
- AutoLoad
- Border
- Count
- Creator
- Enabled
- Height
- Interior
- Left
- ロック済み
- Parent
- Placement
- PrintObject
- Shadow
- ShapeRange
- SourceName
- Top
- Visible
- Width
- ZOrder
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。