Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este tutorial se muestra cómo abrir un Formulario Windows Forms desde una personalización de nivel de documento para Microsoft Office Excel, recopilar información del usuario y escribir esa información en una celda de hoja de cálculo.
Se aplica a: La información de este tema se aplica a proyectos de nivel de documento y proyectos de complementos de VSTO. Consulte Características disponibles por aplicación de Office y tipo de proyecto.
Aunque en este tutorial se usa un proyecto de nivel de documento para Excel específicamente, los conceptos mostrados por el tutorial son aplicables a otros proyectos de Office.
Prerrequisitos
Necesitará los componentes siguientes para completar este tutorial:
Edición de Visual Studio que incluye las herramientas de desarrollo de Microsoft Office. Para obtener más información, vea Configurar un equipo para desarrollar soluciones de Office.
Excel 2013 o Excel 2010 .
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 más información, vea Personalizar el IDE de Visual Studio.
Creación de un nuevo proyecto
El primer paso es crear un proyecto de libro de trabajo de Excel.
Para crear un proyecto
Cree un proyecto de Libro de trabajo de Excel con el nombre WinFormInput y seleccione Crear un nuevo documento en el asistente. 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 WinFormInput al Explorador de soluciones.
Agregar un control NamedRange a la hoja de cálculo
Para agregar un rango nombrado a Sheet1
Seleccione la celda A1 en
Sheet1.En el cuadro Nombre , escriba formInput.
El cuadro Nombre se encuentra a la izquierda de la barra de fórmulas, justo encima de la columna A de la hoja de cálculo.
Presione ENTRAR.
Se agrega un NamedRange control a la celda A1. No hay ninguna indicación visible en la hoja de cálculo, pero formInput aparece en el cuadro Nombre (justo encima de la hoja de cálculo del lado izquierdo) y en la ventana Propiedades cuando se selecciona la celda A1 .
Agregar un formulario Windows Forms al proyecto
Cree un formulario Windows Forms para solicitar al usuario información.
Para agregar un formulario de Windows Forms
Seleccione el proyecto WinFormInput en el Explorador de soluciones.
En el menú Proyecto , haga clic en Agregar formularios Windows Forms.
Asigne un nombre al formulario GetInputString.vb o GetInputString.cs y, a continuación, haga clic en Agregar.
El nuevo formulario se abre en el entorno de diseño.
Seleccione el botón, busque la propiedad Texto en la ventana Propiedades y cambie el texto a Aceptar.
A continuación, agregue código a
ThisWorkbook.vboThisWorkbook.cspara recopilar la información del usuario.
Mostrar los Windows Forms y recopilar información
Cree una instancia de GetInputString Windows Forms y mostrarla y, a continuación, escriba la información del usuario en una celda de la hoja de cálculo.
Para mostrar el formulario y recopilar información
Haga clic con el botón derecho en ThisWorkbook.vb o ThisWorkbook.cs en el Explorador de soluciones y, a continuación, haga clic en Ver código.
En el Open controlador de eventos de
ThisWorkbook, agregue el código siguiente para declarar una variable para el formularioGetInputStringy, a continuación, mostrar el formulario.Nota:
En C#, debe agregar un controlador de eventos como se muestra en el Startup evento siguiente. Para obtener información sobre cómo crear controladores de eventos, vea How to: Create event handlers in Office projects.
Cree un método denominado
WriteStringToCellque escriba texto en un intervalo con nombre. Se llama a este método desde el formulario y la entrada del usuario se pasa al control , NamedRange, en laformInputcelda A1.public void WriteStringToCell(string formData) { Globals.Sheet1.formInput.Value2 = formData; }A continuación, agregue código al formulario para controlar el evento click del botón.
Enviar información a la hoja de cálculo
Para enviar información a la hoja de cálculo
Haga clic con el botón derecho en GetInputString en el Explorador de soluciones y, a continuación, haga clic en Diseñador de vistas.
Haga doble clic en el botón para abrir el archivo de código con el controlador de eventos del Click botón agregado.
Agregue código al controlador de eventos para tomar la entrada del cuadro de texto, enviarlo a la función
WriteStringToCelly, a continuación, cierre el formulario.
Test
Ahora puede ejecutar el proyecto. Aparece Windows Form y la entrada aparece en la hoja de cálculo.
Para probar el libro de trabajo
Presione F5 para ejecutar el proyecto.
Confirme que aparece el Formulario de Windows.
Escriba Hola mundo en el cuadro de texto y, a continuación, haga clic en Aceptar.
Confirme que Hello World aparece en la celda A1 de la hoja de cálculo.
Pasos siguientes
En este tutorial se muestran los conceptos básicos de mostrar un formulario Windows Forms y pasar datos a una hoja de cálculo. Entre otras tareas que puede realizar se incluyen:
Use controles de Windows Forms en un libro de Excel o en un documento de Word. Para obtener más información, vea Controles de Windows Forms en la visión general de documentos de Office.
Modifique la interfaz de usuario de una aplicación de Microsoft Office desde una personalización de nivel de documento o un complemento de VSTO. Para obtener más información, vea Personalización de la interfaz de usuario de Office.