INTRODUCCION Como Iorma de utilizar mas eIicazmente las herramientas de automatizacion de tareas de Excel, en este curso se introducira al alumno en conceptos tales como macros, Iormularios y Iiltros de datos. Asimismo se daran 'recetas de ayuda para la realizacion de ejercicios las cuales serviran como practica de lo aprendido. Anexo a esta clase se implementara un sitio web en la cual sera publicado su contenido y material complementario. CONTENIDOS Macros: deIinicion, Iuncionamiento, macros incorporadas de Excel, construccion. Filtros: repaso de bases de datos, dividir/inmovilizar paneles, Iiltros condicionales. Formularios: deIinicion, creacion, relacion con las macros, Iunciones basicas, etiquetas. PRIMERA PARTE : MACROS Aunque son mayormente conocidos por ser virus, las macros son rutinas o programas que son interpretados por un programa. Asi puedo yo construir una macro en Word para que me coloque los numeros de pagina, o recrear un juego como Tetris en Excel. No solamente los productos MicrosoIt permiten el trabajo con rutinas, hay editores web que realizan el chequeo de rutas de archivos y veriIican duplicidad de inIormacion. Las macros en otros programas son conocidas mayormente como scripts. Para utilizar estas rutinas es posible cargarlas por el menu o simplemente presionando un boton. Por ejemplo en el Men de Herramientas de Excel esta la opcion Personalizar, en ese panel podemos arrastrar un icono relacionado con alguna macro creada a la barra principal de botones. Ahora que ya tenemos nuestro boton de accion, podemos crear una rutina simples: que cambie de color la celda seleccionada. Al seleccionar la opcion Grabar macro aparece una ventana Ilotante con un cuadrado azul. Este cuadrado representa un boton Stop que muchas veces vimos en una grabadora de mano y sirve para detener la grabacion de la macro pues cada click que hacemos en los menu es una Iuncion implementada dentro del lenguaje de programacion macro. Bien los pasos en orden son: 1.- Menu Herramientas -- Macro -- Grabar Nueva Macro. 2.- Aceptar 3.- Seleccionar una celda 4.- Cambiar el color de Iondo con el balde 5.- Seleccionar la celda inIerior 6.- Presionar Detener grabacion (Stop) Asi ya obtenemos nuestra primera macro, pero donde queda almacenada? Las macros son almacenadas Iuera de la hoja en si, pero si graba el archivo y lo lleva a otra parte, seguira conteniendo macros. Es importante mencionar que Excel pide conIirmacion para poder cargar la macro. Para ver o modiIicar la macro contenida en la planilla : Herramientas Macro -- Macros Ahi se puede Ejecutar, Eliminar, y ModiIicar las macros contenidas en el documento. Pero como interesa saber 'como Iunciona, presionemos ModiIicar. Aqui se presenta en Iorma inmediata una ventana que es muy probable no haya visto nunca. Es un editor de rutinas de Visual Basic. Dado que casi todo el paquete MicrosoIt OIIice esta creado en ese lenguaje, lo natu- ral es que tenga incorporado un interprete de comandos del mismo tipo. Ahora analizemos el codigo generado: Sub Macro1() ' ' Macro1 Macro ' Macro grabada el 21-03-02 ' ' Range("E5").Select With Selection.Interior .ColorIndex = 41 .Pattern = xlSolid End With End Sub A primera vista son simples comandos en ingles, donde se discrimina el nombre de la celda seleccionada E5. Aqui tenemos cosas nuevas, estos comandos realizan CON la seleccion un cambio de color (ColorIndex) y patron de relleno (Pattern) Ahora debemos asignar esta macro a nuestro boton sonriente. Nuevamente en Herramientas - Personalizar, y con el boton derecho sobre el icono se despliega un nuevo menu. Ahi en Asignar Macro.. se obtiene una ventana parecida a la que teniamos para modiIicar macros. FILTROS Dentro de las macros una herramienta incorporada de Excel, son los Iiltros de datos. Un Iiltro es tal como lo dice el nombre un programa que hace una seleccin de una familia de datos con parmetros definibles. Supongamos que tengo un listado de alumnos. Puedo contar cuantos alunmos reprobaron un curso para realizar estadisticas. Cuando tengo 20 a 30 alumnos esto es posible realizarlo a simple vista. Pero cuando se trabaja sobre 50 registros, ya se escapa los margenes del programa y es probable un conteo erroneo. Veamos un ejemplo simples de utilizacion del Iiltro. Seleccionando la Iila de titulos de campo vamos al menu Datos - Filtro - Autofiltro. Habra un ligero cambio en el listado en pantalla. Ahora donde teniamos el titulo de la columna aparecen unas listas desplegables. Presionando cualquiera de ellas, puede uno elegir el parametro del Iiltro. Por ejemplo: Todos los que comienzan con la letra A, o si se tienen notas, los que tienen promedio superior a 4. Es posible elegir mas de un criterio. El resultado de la busqueda aparece en el extremo inIerior. Dado que su implementacion esta en el mismo lenguaje de las mac- ros es posible utilizarlo dentro de una macro. Como ejercicio trate de grabar una macro que realice un Iiltro de datos segun notas con el archivo notas.xls. Y vea el codigo generado. Es probable que el resultado sea algo parecido a esto. Sub Macro1() ' ' Macro1 Macro ' Macro grabada el 21-03-02 ' ' Selection.AutoFilter Field:=1, Criteria1:="=b*", Operator:=xlAnd End Sub Como puede suponer este mismo codigo puede utilizarse en el boton sonriente que creamos anteriormente. Para analizar cada sentencia y su utilizacion, la ayuda de Visual Basic es bastante tecnica, pero sirve de orientacion. Se utiliza seleccionando la palabra y presionando el boton F1 del teclado. FORMULARIOS Aparte de realizar simples rutinas, tambien es posible utilizar las macros dentro de Iormularios. Los Iormularios son interfaces para el usuario con el fin de simplificar el ingreso de informacin. Permite automatizar un proceso como el ingreso de notas, la busqueda de titulos de libros en una biblioteca, por nombrar algunas alternativas.Utilicemos para un ejemplo practico la misma lista de alumnos. No se olvide quitar el filtro automtico antes de realizar cualquier cambio. Primero que nada debemos crear el Iormulario. En el nombre de la hoja, en el rincon inIerior, presionamos el boton derecho del mouse e insertamos un Dilogo de Excel. Lo primero que se nos presenta es una nueva barra de herramientas. Aqui podemos ver distintos paneles de entrada que podemos utilizar para crear nuestro Iormulario. Cuadros de texto, botones, lista de seleccion,checkbox y listas desplegables son algunos de los itenes. Y lo otro destacable es que desparece la hoja en que estamos trabajando y se remplaza por un Iondo gris. Aqui se realiza el diseo de Iormularios. Para hacerlo primero seleccione el tipo de panel de entrada y luego dibujelo en el sector gris. Pruebe con boton, cuadro de edicion y cuadro combinado. Para verlo en Iuncionamiento presione el boton Efecutar Cuadro de Dialogo. Aqui esperara hasta que presione Aceptar. Como puede suponer no realiza ningun cambio, ni accion sobre la hoja. Pruebe mas controles y acostumbrese a trabajar diseando en otro hoja un Iormulario de ingreso de alumnos por ejemplo. Ahora para hacerlo mas inteligente este cuadro relacionemos por ejemplo un cuadro combinado con un rango de celdas. Asi podemos elegir el alumno y consultar su rut. En la edicion del cuadro de dialogo, seleccione con el boton derecho del mouse el cuadro combinado y elija formato de control. Aparece este cuadro donde relacionaremos el contenido de la lista con una celda. En Rango de Entrada son los itenes de seleccion. Y en Vincular con Celda es adonde queda almacenado el resultado de la seleccion. Presione el cuadro rojo al lado derecho de Rando de entrada y marque en la Hoja1 todos los nombres de los alumnos. Luego retorne al panel anterior presionando el cuadrito rojo nuevamente. Hacemos lo mismo con Vincular celda pero seleccionamos aqui la celda A3 en la Hoja2. Finalice con Aceptar. Probemos nuestro cuadro de dialogo nuevamente. Ahora el sistema empieza a ganar consistencia y utilidad. Pero todavia no entrega ningun resultado. Seleccione un nombre en el cuadro lateral y presione Aceptar. Regrese a la Hoja2 y va a ver en la celda A3 un numero que corresponde al indice de la seleccion que hizo en el cuadro. Aqui es necesario construir una macro, y como ya sabe hacerlo veamos un codigo simples. Lo haremos asignando el resultado de recien a un cuadro de edicion. En el rincon superior izquierdo existe un cuadro que nos muestra el nombre del objeto que estamos trabajando. Seleccione el cuadro combinado y aparecera Lista Desplegable 1. Al seleccionar un cuadro de edicion, aparecera Cuadro de Edicin 3. Seleccionando el cuadro con boton derecho y asignando macro se abre el editor de codigos. Ingrese el siguiente codigo con los correspondientes valores de cuadros de edicion y cuadro combinado.. Sub Listadesplegable4_AlCambiar() ActiveSheet.Shapes("Edit Box 5").Select Selection.Characters.Text = Range("Hoja2!A3").Value End Sub Y pruebe el cuadro de dialogo, ahora cuando seleccione un nombre mostrara el valor que aparecia en la celda A3 de la Hoja2. Finalmente para determinar la Iila con los datos del alumno, incluimos la Iuncion Indice en la celda B3 tomando como parametros de Iuncion el rango con los datos y la celda A3. =INDICE(Hoja1!C2:C21;A3) Y ahora en el codigo que creamos mas arriba remplazamos Range("Hoja2!A3") por Range("Hoja2!B3"). De ejercicios para seguir aprendiendo o para conseguir ejemplos. Lea la ayuda del Solver que esta incluido en Excel. Esa Iuncion esta construida sobre macros y Iunciones matematicas. Se adjuntan 2 archivos con macros. Una es un indice de soluciones de un puzzle en que se pinta de color el cuadro y se ingresa a un listado ordenandose automaticamente. La otra es un ejemplo de acta de notas por busqueda, para realizar copias de certiIicados.
Diseño, Desarrollo e Implementacion de Software Orientado A La Web para El Manejo Sistematizado de Historias Clínicas en La Clínica Odontológica Especializada Ident de La Ciudad de Ipiales (Nariño) .