Compartir a través de


Tutorial: Creación de la primera personalización de nivel de documento para Excel

En este tutorial introductorio se muestra cómo crear una personalización de nivel de documento para Microsoft Office Excel. Las características que crea en este tipo de solución solo están disponibles cuando se tiene abierto un libro de trabajo específico. No puede usar una personalización de nivel de documento para realizar cambios en toda la aplicación, por ejemplo, mostrando una nueva pestaña de la cinta de opciones cuando se abre cualquier libro.

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

En este tutorial se muestran las siguientes tareas:

  • Crear un proyecto de hoja de cálculo de Excel.

  • Agregar texto a una hoja de cálculo hospedada en el diseñador de Visual Studio.

  • Escribir código que use el modelo de objetos de Excel para agregar texto a la hoja de cálculo personalizada cuando se abre.

  • Compilar y ejecutar el proyecto para probarlo.

  • Limpiar el proyecto completado para quitar los archivos de compilación innecesarios y la configuración de seguridad del equipo de desarrollo.

    Nota:

    El equipo puede mostrar nombres o ubicaciones diferentes para algunos de los elementos de la interfaz de usuario de Visual Studio en las instrucciones siguientes. La edición de Visual Studio que tiene y la configuración que usa determinan estos elementos. Para obtener más información, consulte Personalizar el IDE.

Prerrequisitos

Necesitará los componentes siguientes para completar este tutorial:

Creación del proyecto

Para crear un nuevo proyecto de libro de trabajo de Excel en Visual Studio

  1. Inicie Visual Studio.

  2. En el menú Archivo, seleccione Nuevo y luego haga clic en Proyecto.

  3. En el cuadro de diálogo Crear un nuevo proyecto, seleccione el proyecto Libro VSTO de Excel.

    Nota:

    También puede buscar plantillas escribiendo el nombre del producto de Office en el cuadro de texto Buscar en la parte superior del cuadro de diálogo Crear un nuevo proyecto . Por ejemplo, al escribir Excel se mostrarán todas las plantillas de proyecto para Excel. También puede filtrar la lista de plantillas para mostrar solo las plantillas de Office seleccionando Office en el cuadro desplegable Tipo de proyecto. Para obtener más información, vea Crear un nuevo proyecto en Visual Studio.

  4. Haga clic en Siguiente.

  5. Escriba FirstWorkbookCustomization en el cuadro Nombre del cuadro de diálogo Configurar el nuevo proyecto y haga clic en Crear.

  6. Seleccione Crear un nuevo documento en el Asistente para proyectos de Visual Studio Tools para Office y haga clic en Aceptar.

    • Visual Studio crea el proyecto FirstWorkbookCustomization y agrega los siguientes archivos al proyecto.

    • FirstWorkbookCustomization.xlsx: representa el libro de Excel del proyecto. Contiene todas las hojas de cálculo y gráficos.

    • Sheet1 (archivo .vb para Visual Basic o archivo de .cs para Visual C#): una hoja de cálculo que proporciona la superficie de diseño y el código de la primera hoja de cálculo del libro. Para obtener más información, vea Elemento host de hoja de cálculo.

    • Sheet2 (archivo .vb para Visual Basic o archivo de .cs para Visual C#): una hoja de cálculo que proporciona la superficie de diseño y el código de la segunda hoja de cálculo del libro.

    • Sheet3 (archivo .vb para Visual Basic o archivo de .cs para Visual C#): una hoja de cálculo que proporciona la superficie de diseño y el código de la tercera hoja de cálculo del libro.

    • ThisWorkbook (archivo de .vb para Visual Basic o archivo de .cs para Visual C#): contiene la superficie de diseño y el código para las personalizaciones de nivel de libro. Para obtener más información, vea Elemento host del libro de trabajo.

      El archivo de código Sheet1 se abre automáticamente en el diseñador.

Cerrar y volver a abrir hojas de cálculo en el diseñador

Si cierra deliberadamente o accidentalmente un libro o una hoja de cálculo en el diseñador mientras desarrolla el proyecto, puede volver a abrirlo.

Para cerrar y volver a abrir una hoja de cálculo en el diseñador

  1. Cierre el libro haciendo clic en el botón Cerrar (X) de la ventana del diseñador.

  2. En el Explorador de soluciones, haga clic con el botón derecho en el archivo de código Sheet1 y haga clic en Diseñador de vistas.

    O bien

    En el Explorador de soluciones, haga doble clic en el archivo de código Sheet1 .

Agregar texto a una hoja de cálculo en el diseñador

Puede diseñar la interfaz de usuario (UI) de la personalización modificando la hoja de cálculo que está abierta en el diseñador. Por ejemplo, puede agregar texto a celdas, aplicar fórmulas o agregar controles de Excel. Para obtener más información sobre cómo usar el diseñador, vea Proyectos de Office en el entorno de Visual Studio.

Para agregar texto a una hoja de cálculo mediante el diseñador

  1. En la hoja de cálculo que está abierta en el diseñador, seleccione la celda A1 y escriba el texto siguiente.

    Este texto se agregó mediante el diseñador.

Advertencia

Si agrega esta línea de texto a la celda A2, otro código de este ejemplo lo sobrescribirá.

Agregar texto a una hoja de cálculo mediante programación

A continuación, agregue código al archivo de código Sheet1. El nuevo código usa el modelo de objetos de Excel para agregar una segunda línea de texto al libro. De forma predeterminada, el archivo de código Sheet1 contiene el código generado siguiente:

  • Definición parcial de la Sheet1 clase , que representa el modelo de programación de la hoja de cálculo y proporciona acceso al modelo de objetos de Excel. Para obtener más información, consulte elemento host de la hoja de cálculo y información general sobre el modelo de objetos de Word. El resto de la Sheet1 clase se define en un archivo de código oculto que no debe modificar.

  • Los controladores de eventos Sheet1_Startup y Sheet1_Shutdown. Se llama a estos controladores de eventos cuando Excel carga y descarga la personalización. Utilice estos controladores de eventos para inicializar la personalización cuando se carga y para limpiar los recursos utilizados por la personalización cuando se desactiva. Para obtener más información, vea Eventos en proyectos de Office.

Para agregar una segunda línea de texto a la hoja de cálculo mediante código

  1. En el Explorador de soluciones, haga clic con el botón derecho en Sheet1 y, a continuación, haga clic en Ver código.

    El archivo de código se abre en Visual Studio.

  2. Reemplace el Sheet1_Startup controlador de eventos por el código siguiente. Cuando se abre Sheet1, este código agrega una segunda línea de texto a la hoja de cálculo.

    private void Sheet1_Startup(object sender, System.EventArgs e)
    {
        Microsoft.Office.Tools.Excel.NamedRange nr =
            this.Controls.AddNamedRange(this.Range["A2"], "NamedRange1");
        nr.Value2 = "This text was added by using code";
    }
    

Prueba del proyecto

Para probar el libro de trabajo

  1. Presione F5 para compilar y ejecutar el proyecto.

    Cuando construyes el proyecto, el código se compila en un ensamblado asociado al libro. Visual Studio coloca una copia del libro y el ensamblado en la carpeta de salida de compilación del proyecto y configura las opciones de seguridad en el equipo de desarrollo para permitir que se ejecute la personalización. Para obtener más información, vea Compilar soluciones de Office.

  2. En el libro de trabajo, compruebe que ve el siguiente texto.

    Este texto se agregó mediante el diseñador.

    Este texto se agregó mediante código.

  3. Cierre el libro.

Limpieza del proyecto

Cuando termine de desarrollar un proyecto, debe quitar los archivos de la carpeta de salida de compilación y la configuración de seguridad creada por el proceso de compilación.

Para limpiar un proyecto ya completado en tu equipo de desarrollo

  1. En Visual Studio, en el menú Compilar , haga clic en Limpiar solución.

Pasos siguientes

Ahora que ha creado una personalización básica de nivel de documento para Excel, puede obtener más información sobre cómo desarrollar personalizaciones a partir de estos temas: