Cómo: Agregar controles ListObject a hojas de cálculo

Actualización: Julio de 2008

Se aplica a

La información de este tema sólo se aplica a los proyectos y versiones especificados de Visual Studio Tools para Office de Microsoft Office.

Proyectos de nivel de documento

  • Excel 2007

  • Excel 2003

Proyectos de nivel de aplicación

  • Excel 2007

Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto.

Puede agregar controles ListObject en tiempo de diseño y en tiempo de ejecución a una hoja de cálculo de Microsoft Office Excel en proyectos en el nivel del documento.

A partir de Visual Studio 2008 Service Pack 1 (SP1), puede agregar controles ListObject en tiempo de ejecución en los proyectos de complementos en el nivel de la aplicación.

En este tema se describen las tareas siguientes:

  • Agregar controles ListObject en tiempo de diseño

  • Agregar controles ListObject en tiempo de ejecución en un proyecto en el nivel del documento

  • Agregar controles ListObject en tiempo de ejecución en un proyecto en el nivel de la aplicación

Para obtener más información sobre los controles ListObject, vea ListObject (Control).

Agregar controles ListObject en tiempo de diseño

Hay varias maneras de agregar controles ListObject en tiempo de diseño a una hoja de cálculo en un proyecto en el nivel del documento: desde Excel, desde el Cuadro de herramientas de Visual Studio y desde la ventana Orígenes de datos.

Nota:

Es posible que su equipo muestre nombres o ubicaciones diferentes para algunos de los elementos de la interfaz de usuario de Visual Studio incluidos en las instrucciones siguientes. La edición de Visual Studio que se tenga y la configuración que se utilice determinan estos elementos. Para obtener más información, vea Valores de configuración de Visual Studio.

Para utilizar el cuadro de diálogo Crear lista en Excel 2003

  1. En el menú Datos, elija Datos de Microsoft Office Excel, elija Lista y, a continuación, haga clic en Crear lista.

    Aparecerá el cuadro de diálogo Crear lista.

    Nota:

    Si Datos de Microsoft Office Excel no está disponible en el menú Datos, haga clic en la hoja de cálculo para activarlo.

  2. Seleccione las celdas que desea incluir en la lista y haga clic en Aceptar.

Para utilizar la cinta de opciones en Excel 2007

  1. En la ficha Insertar, del grupo Tablas, haga clic en Tabla.

  2. Seleccione las celdas que desea incluir en la lista y haga clic en Aceptar.

Para utilizar el Cuadro de herramientas

  1. Desde la ficha Controles de Excel del Cuadro de herramientas, arrastre ListObject hacia la hoja de cálculo.

    Aparecerá el cuadro de diálogo Agregar control ListObject.

  2. Seleccione las celdas que desea incluir en la lista y haga clic en Aceptar.

    Si no desea conservar el nombre predeterminado, puede cambiarlo en la ventana Propiedades.

Para utilizar la ventana Orígenes de datos

  1. Abra la ventana Orígenes de datos y cree un origen de datos para el proyecto. Para obtener más información, vea Cómo: Conectarse a los datos de una base de datos.

  2. Arrastre una tabla desde la ventana Orígenes de datos hasta la hoja de cálculo.

    Un control ListObject enlazado a datos se agrega a la hoja de cálculo. Para obtener más información, vea Enlace de datos y formularios Windows Forms.

Agregar controles ListObject en tiempo de ejecución en un proyecto en el nivel del documento

Puede agregar el control ListObject dinámicamente en tiempo de ejecución. Esto le permite crear los controles de host en respuesta a eventos. Los objetos de lista creados de forma dinámica no se conservan en la hoja de cálculo como controles host cuando ésta se cierra. Para obtener más información, vea Agregar controles a documentos de Office en tiempo de ejecución.

Para agregar un control ListObject a una hoja de cálculo mediante programación

  • En el controlador de eventos Startup de Sheet1, inserte el código siguiente para agregar un control ListObject a las celdas A1 hasta A4.

    Dim employeeData As Microsoft.Office.Tools.Excel.ListObject
    employeeData = Me.Controls.AddListObject(Me.Range("$A$1:$D$4"), "employees")
    
    Microsoft.Office.Tools.Excel.ListObject employeeData;
    employeeData = this.Controls.AddListObject(this.get_Range("$A$1:$D$4", missing), "employees");
    

Agregar controles ListObject en tiempo de ejecución en un proyecto en el nivel de la aplicación

A partir del SP1, puede agregar un control ListObject mediante programación a cualquier hoja de cálculo abierta en un proyecto en el nivel de la aplicación. Los objetos de lista creados de forma dinámica no se conservan en la hoja de cálculo como controles host cuando ésta se guarda y, a continuación, se cierra. Para obtener más información, vea Ampliar documentos de Word y libros de Excel en complementos en el nivel de la aplicación en tiempo de ejecución.

Para agregar un control ListObject a una hoja de cálculo mediante programación

  • El código siguiente genera un elemento host de hoja de cálculo que se basa en la hoja de cálculo abierta y, a continuación, agrega un control ListObject a las celdas de la A1 a la A4.

    Private Sub AddListObject()
        Dim worksheet As Worksheet = CType(Application.ActiveWorkbook.Worksheets(1),  _
            Excel.Worksheet).GetVstoObject()
        Dim list1 As Microsoft.Office.Tools.Excel.ListObject
        Dim cell As Excel.Range = worksheet.Range("$A$1:$D$4")
        list1 = worksheet.Controls.AddListObject(cell, "MyListObject")
    End Sub
    
    private void AddListObject()
    {
        Worksheet worksheet =
            ((Excel.Worksheet)Application.
                  ActiveWorkbook.Worksheets[1]).GetVstoObject();
        Microsoft.Office.Tools.Excel.ListObject list1;
        Excel.Range cell = worksheet.Range["$A$1:$D$4", missing];
        list1 = worksheet.Controls.AddListObject(cell, "list1");
    }
    

Vea también

Tareas

Cómo: Cambiar el tamaño de los controles ListObject

Conceptos

Ampliar documentos de Word y libros de Excel en complementos en el nivel de la aplicación en tiempo de ejecución

Desarrollo de complementos de nivel de aplicación de Excel

ListObject (Control)

Información general sobre elementos y controles Host

Enlazar datos a controles

Limitaciones de programación de elementos y controles Host

Otros recursos

Controles en documentos de Office

Controles Host de Excel

Historial de cambios

Fecha

Historial

Motivo

Julio de 2008

Se agrega una sección que muestra cómo agregar un control ListObject a una hoja de cálculo en un complemento en el nivel de la aplicación.

Cambio de características de SP1.