Objeto OLEObjects (Excel)

Colección de todos los objetos OLEObject de la hoja de cálculo especificada.

Comentarios

Cada objeto OLEObject representa un control ActiveX o un objeto OLE vinculado o insertado.

Un control ActiveX de una hoja tiene dos nombres: el nombre de la forma que contiene el control, visible en el cuadro Nombre al ver la hoja, y el nombre en código del control, presente en la celda a la izquierda de (Nombre) en la ventana Propiedades.

La primera vez que agrega un control a una hoja, el nombre de la forma y el nombre de código son iguales. Sin embargo, si se modifica uno de los nombres, el otro no cambia automáticamente para coincidir con el que se modificó. Este último, sin embargo, parece haber cambiado con las versiones de Excel. Con la versión 16.0 ambos se mantienen coherentes y no es posible cambiar uno de los dos por sí solo.

Ejemplo:

Use el método OLEObjects del objeto Worksheet para devolver la colección OLEObjects .

En el siguiente ejemplo, se ocultan todos los objetos OLE de la hoja de cálculo uno.

Worksheets(1).OLEObjects.Visible = False

Use el método Add para crear un nuevo objeto OLE y agregarlo a la colección OLEObjects . En el siguiente ejemplo, se crea un nuevo objeto OLE que representa el archivo de mapa de bits Arcade.bmp y se agrega a la hoja de cálculo uno.

Worksheets(1).OLEObjects.Add FileName:="arcade.gif"

En el siguiente ejemplo se crea un nuevo control ActiveX (un cuadro de lista) y se agrega a la hoja de cálculo uno.

Worksheets(1).OLEObjects.Add ClassType:="Forms.ListBox.1"

Use el nombre de código de un control en los nombres de sus procedimientos de eventos. Sin embargo, al devolver un control de la colección Shapes o OLEObjects de una hoja, debe usar el nombre de la forma, no el nombre del código, para hacer referencia al control por nombre. Por ejemplo, suponga que agrega una casilla a una hoja y que tanto el nombre predeterminado de la forma como el de código son CheckBox1. Si después cambia el nombre de código del control escribiendo chkFinished junto a (Name) en la ventana Propiedades, debe usar chkFinished en los nombres de procedimiento de evento, pero tendrá que seguir usando CheckBox1 para obtener el control de la colección Shapes u OLEObject, tal como se muestra en el ejemplo siguiente.

Private Sub chkFinished_Click() 
 ActiveSheet.OLEObjects("CheckBox1").Object.Value = 1 
End Sub

Métodos

Propiedades

Vea también

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.