Você está na página 1de 3

MACROS

OFIMATICA

UTM

CREACION DE MACROS MANUALMENTE Para crear una macro de forma manual es necesario tener conocimientos de programacin en general y de Visual Basic en particular, ya que es el lenguaje de programacin en el que se basa el VBA de Excel. Primero debemos abrir el editor Visual Basic presionando la combinacin de teclas Alt + F11. Para ver el entorno de desarrollo de programacin del editor Visual Basic visita nuestro bsico. Una vez abierto el editor de Visual Basic debemos insertar un mdulo de trabajo que es donde se almacena el cdigo de las funciones o procedimientos de las macros. Para insertar un mdulo accedemos al men Insertar Mdulo. A continuacin debemos plantearnos si lo que vamos a crear es una funcin (en el caso que devuelva algn valor), o si por el contrario es un procedimiento (si no devuelve ningn valor). Una vez concretado que es lo que vamos a crear, accedemos al men Insertar Procedimiento... Nos aparece un cuadro de dilogo como vemos en la imagen donde le damos el Nombre: al procedimiento/funcin sin insertar espacios en su nombre. Tambin escogemos de qu Tipo es, si es un Procedimiento, Funcin o es una Propiedad. Adems podemos seleccionar el mbito de ejecucin. Si lo ponemos como Pblico podremos utilizar el procedimiento/funcin desde cualquier otro mdulo, pero si lo creamos como Privado solo podremos utilizarlo dentro de ese mdulo. Una vez seleccionado el tipo de procedimiento y el mbito presionamos sobre Aceptar y se abre el editor de Visual Basic donde escribimos las instrucciones necesarias para definir la macro. EJERCICIO PASO A PASO. CREAR UNA MACRO MANUALMENTE.

Objetivo. Aprender cmo crear una macro de forma manual, es decir escribiendo el cdigo a mano. Empezaremos por crear una macro para poner a cero el contenido de ciertas celdas de nuestra hoja de trabajo. 1 Si no tienes abierto Excel2007,brelo para probar el ejercicio. 3 Guarda el libro en tu carpeta con el nombre libro_macros. 4 Pulsa las teclas ALT + F11. 5 Accede al men Insertar para insertar un nuevo mdulo. 6 Presiona sobre Mdulo. 7 Vuelve al men Insertar. 8 Selecciona Procedimiento... Nos aparece el cuadro de dilogo Procedimiento. 9 En el nombre del procedimiento escribe Limpiar. 10 Selecciona Procedimiento y que es de mbito Pblico. 11 Presiona sobre Aceptar. 12 Escribe el cdigo del procedimiento como se ve en la imagen, lo escrito en verde son comentarios aclaratorios, si quieres puedes no escribirlos. Public Sub Limpiar()

MACROS

OFIMATICA

UTM

' Vamos a poner a cero las celdas del rango D10:F10 ' Range ("rango") representa un rango de celdas Range ("D10:F10"). Value= 0 'Vamos a limpiar las celdas del rango D11:F11 Range ("D11:F11").Clear End Sub 13 Cierra la ventana del Editor de VisualBasic. Ahora vamos a comprobar que funciona correctamente la macro creada. 14 Accede a la pestaa Vista. 15 Haz clic en el botn Macros. 16 Selecciona la macro creada Limpiar y pulsa sobre Ejecutar. 17 Observa como las celdas del rango D10:F10 se han puesto a cero y las del rango D11:F11 se han quedado sin contenido. No cierres el libro. Para practicar otras instrucciones de VBA, vamos a definir una macro para sumar tres celdas y dejar el resultado en otra. 18 Pulsa las teclas ALT + F11. Te aparecer el mdulo con el procedimiento limpiar. Si no es as, busca en la zona de la izquierda, en el explorador de proyectos, en la carpeta Mdulos, el mdulo Mdulo1 y haz doble clic sobre l. 19 Accede al men Insertar para insertar un nuevo mdulo. 20 Selecciona Procedimiento... Nos aparece el cuadro de dilogo Procedimiento. 21 En el nombre del procedimiento escribe Sumar. 22 Selecciona Procedimiento y que es de mbito Pblico. 23 Presiona sobre Aceptar. 24 Escribe el cdigo del procedimiento como se ve en la imagen, lo escrito en verde son comentarios aclaratorios, si quieres puedes no escribirlos. Public Sub Sumar() 'El objeto cell(no. fila, no. columna) representa una celda ' de la hoja activa ' Cells (1,1) y Cells(1,1).Value son equivalentes Cells(10,6)= 0 'empezamos por poner a cero la celda For i=3 To 5 Cells(10,6)= Cells(10,6) + Cells(i,2) ' le vamos sumando B3, B4 y B5 Next End Sub 25 Cierra la ventana del Editor de VisualBasic. Ahora vamos a comprobar que funciona correctamente la macro creada. 26 Ve a la pestaa Vista. 27 Haz clic en el botn Macros. 28 Selecciona la macro creada Sumar y pulsa sobre Ejecutar. Observa como la celda F10 contiene la suma de las celdas B3, B4 y B5. Por ltimo practicaremos con el bucle For each... next, muy til en este tipo de programacin. 29 Pulsa las teclas ALT + F11. Te aparecer el mdulo con el procedimiento limpiar. Si no es as, busca en la zona de la izquierda, en el explorador de proyectos, en la carpeta Mdulos, el mdulo Mdulo1 y haz doble clic sobre l.

MACROS

OFIMATICA

UTM

30 Accede al men Insertar para insertar un nuevo mdulo. 31 Selecciona Procedimiento... Nos aparece el cuadro de dilogo Procedimiento. 32 En el nombre del procedimiento escribe Aumentar. 33 Selecciona Procedimiento y que es de mbito Pblico. 34 Presiona sobre Aceptar. 35 Escribe el cdigo del procedimiento como se ve en la imagen, lo escrito en verde son comentarios aclaratorios, si quieres puedes no escribirlos.

Public Sub Aumentar() For Each c In Selection.Cells c.Value = c.Value * 1.5 Next 'Selection representa el rango de celdas seleccionadas 'Selection.Cells la coleccin de celdas seleccionadas 'En cada iteracin del bucle c representa una celda de la coleccin End Sub Con este procedimiento aumentamos un 50% los valores contenidos en las celdas seleccionadas. 36 Cierra la ventana del Editor de VisualBasic. Ahora vamos a comprobar que funciona correctamente la macro creada. En este caso, como la macro funciona a partir de las celdas seleccionadas, tenemos que seleccionarlas antes de ejecutar la macro. 37 Selecciona un rango de celdas incluido en B3:B9 (selecciona los precios de los artculos que van a variar, puedes incluso seleccionar celdas no contiguas con la tecla Ctrl). 38 Ve a la pestaa Vista. 39 Haz clic en el botn Macros. 40 Selecciona la macro creada Aumentar y pulsa sobre Ejecutar. Observa como los valores de las celdas seleccionadas han aumentado un 50%. 41 No cierres el archivo, en el siguiente ejercicio lo guardaremos con Macros incluidas.