Download - Automatización y Microsoft Word
Automatización y Microsoft Word
Vicente García Díaz – [email protected]
Universidad de Oviedo, 2012
Ofimática
Adaptación basada en los documentos de cursos anteriores realizados por María Elena Alva de Sagastegui - [email protected] y Agustín Cernuda del Río - [email protected] para la asignatura de Ofimática (Escuela de Ingeniería Informática de la Universidad de Oviedo)
Automatización de aplicaciones de Microsoft Office
Aspectos básicos
2
• Las aplicaciones de Microsoft Office ofrecen librerías para trabajar con ellas
• Las librerías permiten trabajar con toda la funcionalidad que ofrece Office como si fueran objetos de programación
• Por lo tanto, puede trabajarse con Office desde software que nosotros desarrollemos con lenguajes de programación
▫ El software desarrollado: Automation Controller
▫ Los objetos Office que se pueden acceder y manipular: Automation Object
Librerías de objetos COM Aspectos básicos
3
• Las librerías de Microsoft Office son librerías COM ▫ Component Object Model (Microsoft, 1993)
• Permite: ▫ La comunicación entre procesos ▫ La intercomunicación entre objetos escritos en
cualquier lenguaje
• Abarca varias tecnologías ▫ OLE ▫ OLE Automatic ▫ ActiveX ▫ COM+ ▫ DCOM
Comunicación entre COM y .NET Aspectos básicos
4
• .NET está sustituyendo a la tecnología COM
• Desde .NET se puede trabajar con la tecnología COM
• Se utilizan “envoltorios” llamados RCM (envoltorio de tiempo de ejecución)
• La tecnología utilizada es COM Interop
Documentación Aspectos básicos
5
• En MSDN ▫ Por ejemplo para Word ▫ http://msdn.microsoft.com/en-
us/library/microsoft.office.interop.word(v=office.11).aspx
• En la ficha programador
Aspectos básicos
6
Documentación. Ayuda mediante Visual Basic Aspectos básicos
7
• En la ayuda del programa
• Pulsando F1 sobre uno de los comandos
Pasos para la automatización Pruebas con la API
8
• Es muy sencillo:
1. Se crea un proyecto de .NET
2. Se incluyen las referencias de las librerías necesarias
3. Se incluye el código deseado
Creamos un proyecto .NET
9
Pruebas con la API
Incluimos las referencias (1/3)
10
• Librerías externas para aumentar la disponibilidad de clases ▫ Java .JAR
▫ .NET .DLL
Pruebas con la API
Incluimos las referencias (2/3)
11
• .NET y COM 1
2
Pruebas con la API
Incluimos las referencias (3/3)
12
• Aunque sean librerías COM, se tratan como si fueran librerías .NET
• Clases “envoltorio”
• Permiten facilitar su empleo
Pruebas con la API
Para utilizar las clases de las librerías
13
• Dos opciones:
Pruebas con la API
También se podría poner: using Word = Microsoft.Office.Interop.Word
Para abrir una instancia Word
14
• Insertamos un botón en la ventana
• Hacemos doble “clic” en él
• Introducimos el siguiente código:
• No se verá nada, pero si vamos al administrador de tareas habrá un proceso WINWORD.EXE
Pruebas con la API
Mostrar/ocultar Word
15
• Ahora ya se muestra / oculta Word y se puede cerrar haciendo clic en la X
Pruebas con la API
Pruebas con la API
Cerrar Word
16
• Ahora ya se puede cerrar Word desde el nuevo botón
Crear un documento en blanco
17
Pruebas con la API
Guardar el documento
18
Pruebas con la API
Trabajar con texto
19
• Diferentes métodos de acceso ▫ miWord.Selection.Copy()
▫ miWord.Selection.Cut()
▫ miWord.Selection.Paste()
▫ miWord.Selection.Delete()
▫ miWord.Selection.CheckSpelling()
▫ miWord.Selection.Move()
▫ miWord.Selection.Equals()
Pruebas con la API
Escribir en el documento
20
Pruebas con la API
¿La tabla de multiplicar del 9?