Compartir a través de


Tutorial: Enlace de datos complejo en un proyecto en el nivel del documento

En este tutorial se muestran los fundamentos del enlace de datos complejos en un proyecto en el nivel del documento. Puede enlazar varias celdas de una hoja de cálculo de Microsoft Office Excel a los campos de la base de datos Northwind de SQL Server.

Se aplica a: la información de este tema se aplica a los proyectos de nivel de documento para Excel 2007 y Excel 2010. Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto de Office.

En este tutorial se muestran las tareas siguientes:

  • Agregar un origen de datos al proyecto de libro.

  • Agregar controles enlazados a datos a una hoja de cálculo.

  • Guardar en la base de datos los cambios realizados en los 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.

Requisitos previos

Necesita los componentes siguientes para completar este tutorial:

-

Una edición de Visual Studio 2010 que incluye las herramientas para desarrolladores de Microsoft Office. Para obtener más información, vea [Configurar un equipo para desarrollar soluciones de Office](bb398242\(v=vs.100\).md).
  • Excel 2007 o Excel 2010. 

  • Acceso a un servidor con la base de datos de ejemplo Northwind de SQL Server.

  • Permisos de lectura y escritura en la base de datos de SQL Server.

Crear un proyecto nuevo

El primer paso es crear un proyecto de libro de Excel.

Para crear un nuevo proyecto

  • Cree un proyecto de libro de Excel con el nombre Mi enlace de datos complejo. En el asistente, seleccione Crear un nuevo documento.

    Para obtener más información, vea Cómo: Crear proyectos de Office en Visual Studio.

    Visual Studio abre el nuevo libro de Excel en el diseñador y agrega el proyecto Mi enlace de datos complejo al Explorador de soluciones.

Crear el origen de datos

Utilice la ventana Orígenes de datos para agregar al proyecto un conjunto de datos con tipo.

Para crear el origen de datos

  1. Si la ventana Orígenes de datos no está visible, en el menú Datos, haga clic en Mostrar orígenes de datos.

    Nota

    Si la opción Mostrar orígenes de datos no está disponible, haga clic en el libro de Excel y compruébelo de nuevo.

  2. Haga clic en Agregar nuevo origen de datos para iniciar el Asistente para configuración de orígenes de datos.

  3. Seleccione Base de datos y, a continuación, haga clic en Siguiente.

  4. Seleccione una conexión de datos a la base de datos de ejemplo Northwind de SQL Server o agregue una nueva conexión mediante el botón Nueva conexión.

  5. Cuando haya seleccionado o creado una conexión, haga clic en Siguiente.

  6. Si estuviera activada, desactive la opción de guardar la conexión y, a continuación, haga clic en Siguiente.

  7. Expanda el nodo Tablas en la ventana Objetos de base de datos.

  8. Active la casilla que aparece junto a la tabla Empleados.

  9. Haga clic en Finalizar.

El asistente agrega la tabla Empleados a la ventana Orígenes de datos. También agrega al proyecto un conjunto de datos con tipo, visible en el Explorador de soluciones.

Agregar controles a la hoja de cálculo

Una hoja de cálculo mostrará la tabla Employees cuando se abra el libro. Los usuarios podrán realizar cambios en los datos y, a continuación, guardar estos cambios en la base de datos haciendo clic en un botón.

Para enlazar automáticamente la hoja de cálculo a la tabla, puede agregar un control ListObject a la hoja de cálculo desde la ventana Orígenes de datos. Para dar al usuario la opción de guardar los cambios, agregue un control Button desde el Cuadro de herramientas.

Para agregar un objeto de lista

  1. Compruebe que está abierto el libro Mi enlace de datos complejo.xls está abierto en el diseñador de Visual Studio, mostrando la hoja Sheet1.

  2. Abra la ventana Orígenes de datos y seleccione el nodo Empleados.

  3. Haga clic en la flecha de la lista desplegable que aparece.

  4. Seleccione ListObject en la lista desplegable.

  5. Arrastre la tabla Employees a la celda A6.

    En la celda A6 se crea un control ListObject llamado EmployeesListObject. Al mismo tiempo, se agregan al proyecto un control BindingSource denominado EmployeesBindingSource, un adaptador de tablas y una instancia de la clase DataSet. El control se enlaza a BindingSource, que, a su vez, se enlaza a la instancia de DataSet.

Para agregar un botón

  • Desde la ficha Controles comunes del Cuadro de herramientas, agregue un control Button a la celda A4 de la hoja de cálculo.

El paso siguiente es agregar texto al botón cuando se abre la hoja de cálculo.

Inicializar el control

Agregue el texto al botón en el controlador de eventos Startup.

Para inicializar el control

  1. En el Explorador de soluciones, haga clic con el botón secundario del mouse en Sheet1.vb o Sheet1.cs y, a continuación, haga clic en Ver código en el menú contextual.

  2. Agregue el código siguiente al método Sheet1_Startup para establecer el texto del button.

    Me.Button1.Text = "Save"
    
    this.button1.Text = "Save";
    
  3. Sólo para C#, agregue un controlador de eventos para el evento Click al método Sheet1_Startup.

    this.button1.Click += new EventHandler(button1_Click);
    

Ahora agregue código para controlar el evento Click del botón.

Guardar los cambios en la base de datos

Cualquier cambio que se haya realizado en los datos sólo existe en el conjunto de datos local hasta que se guardan explícitamente en la base de datos.

Para guardar los cambios en la base de datos

  • Agregue un controlador de eventos para el evento Click del button y agregue el código siguiente para confirmar todos los cambios realizados en el conjunto de datos y guardarlos en la base de datos.

    Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) _
        Handles Button1.Click
    
        Try
            Me.EmployeesTableAdapter.Update(Me.NorthwindDataSet.Employees)
    
        Catch ex As System.Data.DataException
            MessageBox.Show(ex.Message)
        End Try
    End Sub
    
    private void button1_Click(object sender, EventArgs e)
    {
        try
        {
            this.employeesTableAdapter.Update(this.northwindDataSet.Employees);
        }
        catch (System.Data.DataException ex)
        {
            MessageBox.Show(ex.Message);
        }
    }
    

Probar la aplicación

Ahora puede probar el libro para comprobar de que los datos aparecen como se espera y que puede manipular los datos del objeto de lista.

Para probar el enlace de datos

  • Presione F5.

    Compruebe que, cuando se abre el libro, el objeto de lista se rellena con los datos de la tabla Empleados.

Para modificar los datos

  1. Haga clic en la celda B7, que debe contener el apellido Davolio.

  2. Escriba el apellido Anderson y, a continuación, presione ENTRAR.

Para modificar un encabezado de columna

  1. Haga clic en la celda que contiene el encabezado de columna Apellidos.

  2. Escriba Apellidos y, a continuación, presione ENTRAR.

Para guardar los datos

  1. En la hoja de cálculo, haga clic en Guardar.

  2. Salga de Excel. Haga clic en No cuando se le pregunte si desea guardar los cambios realizados.

  3. Presione F5 para ejecutar de nuevo el proyecto.

    El objeto de lista se rellena con los datos de la tabla Empleados.

  4. Observe que el apellido en la celda B7 todavía es Anderson, que es el cambio que realizó en los datos y guardó en la base de datos. El encabezado de columna Apellidos del encabezado de columna se ha vuelto a establecer en su formato original sin el espacio, porque el encabezado de columna no está enlazado a la base de datos y no guardó los cambios realizados en la hoja de cálculo.

Para agregar nuevas filas

  1. Seleccione una celda dentro del objeto de lista.

    En la parte inferior de la lista aparece una nueva fila, con un asterisco (*) en la primera celda de la nueva fila.

  2. Agregue la información siguiente en la fila vacía.

    IdEmpleado

    Apellido

    Nombre

    Título

    10

    Ito

    Shu

    Director de ventas

Para eliminar filas

  • Haga clic con el botón secundario en el número 16 (fila 16) en el extremo izquierdo de la hoja de cálculo y, a continuación, haga clic en Eliminar.

Para ordenar las filas de la lista

  1. Seleccione una celda dentro de la lista.

    En cada encabezado de columna aparecen botones con flechas.

  2. Haga clic en el botón de flecha del encabezado de columna Apellidos.

  3. Haga clic en Orden ascendente.

    Las filas se ordenan alfabéticamente en función de los apellidos.

Para filtrar información

  1. Seleccione una celda dentro de la lista.

  2. Haga clic en el botón de flecha en el encabezado de columna Cargo.

  3. Haga clic en Representante de ventas.

    La lista muestra sólo las filas que tienen Representante de ventas en la columna Cargo.

  4. Vuelva a hacer clic en el botón de flecha del encabezado de columna Cargo.

  5. Haga clic en (Todos).

    Se quita la función de filtro y aparecen todas las filas.

Pasos siguientes

Este tutorial muestra los fundamentos para enlazar una tabla de una base de datos a un objeto de lista. Éstas son algunas de las tareas que pueden venir a continuación:

Vea también

Tareas

Tutorial: Enlace de datos simple en un proyecto en el nivel del documento

Otros recursos

Enlazar datos a controles en soluciones de Office

Datos en las soluciones de Office