Sei sulla pagina 1di 9

MACROS EN EXCEL Parte I

Excel es un programa que tiene un gran potencial, pero la mayora de la gente lo maneja de una forma muy simple, utilizando solo opciones bsicas, pero hay algo muy importante que tengo que decirles. Excel cuenta con un lenguaje muy poderoso llamado Visual Basic, este es solo una parte del lenguaje, pero permite hacer o resolver los problemas mas fcilmente, solo debemos aprender a programarlo y para eso es este curso, podra la gente decir que este curso es un nivel muy alto de Excel y quizs si lo sea, pero es fcil de aprender ya que se manejaran trminos sencillos, a mi me gusta hablar con palabras que todo el mundo entienda y eso lo hace mas fcil. La programacin que emplea en este curso o las estructuras que aparecen son creadas por su servidor, ya que para manejar la programacin de Visual Basic con Excel es necesario tener mucha creatividad, cada persona puede crear estructuras diferentes pero que trabajen igual. s que manos a la obra.

"el cuadro Proyecto de doble clic en Mdulos o simplemente presione el signo de + que aparece en la opcin Mdulos. #e activara debajo de Mdulos la $pcin Modulo1 %&. "e doble clic en Modulo1. #e mostrara en el 'ditor de (isual )asic el cdigo de la macro que grabamos de la siguiente forma*
!.

#ub +acro%,. . +acro% +acro . +acro grabada el &/0&102&&% por 3 +$4 +'4"$5 $67$ . . cceso directo* 683L9r . 3ange,: %:-.#elect ctive6ell.;ormula3%6% < :3amn:

3ange,: 2:-.#elect 'nd #ub =ue es lo que significa esto nos preguntaremos asombrados, a continuacin se da una e>plicacin de lo que ha hecho Excel* Su y E!d Su indican el inicio y el final del procedimiento de la Macro1 8odo lo que aparece con un apostrofe " indica que no se tomara en cuenta que es solo te>to o comentarios y ese te>to debe de aparecer en un color, ya sea el color verde. Ra!#e$%A1%&'Select ?ndica que lo primero que hicimos al grabar la macro fue trasladarnos a la celda A1. La orden Ra!#e nos permite trasladarnos a una celda Acti(eCell')or*ulaR1C1 + %Ra*!% 'sto indica que se escribir en la celda en que se encuentra el valor de te>to Ra*!. 8odo lo que aparece entre comillas siempre ser un valor de te>to. La orden Acti(eCell')or*ulaR1C1 nos permite escribir un valor en la celda activa. Ra!#e$%A,%&'Select $tra vez indicamos que se traslade a la celda 2. 'sto se debe a que cuando escribimos el nombre de Ra*! en A1 presionamos E!ter y al dar E!ter bajo a la celda A,.

@ara comprender mejor alteraremos el cdigo dentro del editor de (isual )asic. =ue crees que pasara aqu con nuestra +acro* #ub +acro%,. . +acro% +acro . +acro grabada el &/0&102&&% por 3 +$4 +'4"$5 $67$ . . cceso directo* 683L9r . 3ange,: %:-.#elect ctive6ell.;ormula3%6% < :3amn: 3ange,:)%:-.#elect ctive6ell.;ormula3%6% < :6alle 2% de +arzo A2/&: 3ange,:6%:-.#elect ctive6ell.;ormula3%6% < :B%C2C1DC%B: 3ange,:"%:-.#elect ctive6ell.;ormula3%6% < :4ogales #onora: 3ange,:'%:-.#elect ctive6ell.;ormula3%6% < :6$4 L'@ 4$E L'#: 'nd #ub s es acabo de alterar el cdigo y cuando regrese a Excel y ejecute la macro con Co!trol + r har lo siguiente*

E! A1 escri E! B1 escri E! C1 escri E! 61 escri E! E1 escri

ir- Ra*! ir- Calle ,1 de Mar.o /,01 ir- 213,345312 ir- No#ales So!ora ir- CONALEP NO7ALES

s que salgamos del editor dando clic en el Me!8 Arc9i(o y eligiendo la opcin Cerrar y (ol(er a Microso:t Excel . #i no desea salir por completo de clic en el ot! Microso:t Excel que se encuentra activado en la barra de tareas y cuando dese volver al editor de clic en el ot! Microso:t Visual Basic que se encuentra en la barra de 8areas. hora ya que salimos de Visual Basic y estamos en Excel de 4uevo ejecutemos la macro presionando Co!trol + r y veamos los resultados de nuestra modificacin. =ue te parece es sencillo o 4oF, 6laro necesitamos practicar bastante para dominar esto, as que repasa la )ase , cuantas veces sea necesario, otra cosa no trates de generar cdigos muy complejos en tus macros porque te vas a enredar, poco a poco se va lejos. @ractica ??
Eenera una Macro que escriba un nombre en una celda y lo ponga negrita y observa el Cdi#o. Eenera una Macro que escriba un nombre en una celda y lo 6entre y observa el Cdi#o. Eenera una Macro que escriba un nombre en una celda y cambie el tamaGo de la letra a 2& puntos y observa el Cdi#o.

6digos +s comunes* ;rasladarse a u!a Celda 3ange,: %:-.#elect Escri ir e! u!a Celda ctivecell.;ormula3%6%<:3amon: Letra Ne#rita #election.;ont.)old < 8rue Letra Cursi(a #election.;ont.?talic < 8rue Letra Su rayada #election.;ont.Hnderline < >lHnderline#tyle#ingle Ce!trar ;exto Iith #election .7orizontal lignment < >l6enter 'nd Iith Ali!ear a la i.<uierda Iith #election .7orizontal lignment < >lLeft 'nd Iith Ali!ear a la 6erec9a

Iith #election .7orizontal lignment < >l3ight 'nd Iith ;i=o de Letra$)ue!te& Iith #election.;ont .4ame < : Earamond: 'nd Iith ;a*a>o de Letra$;a*a>o de )ue!te& Iith #election.;ont .#ize < %J 'nd Iith Co=iar #election.6opy Pe#ar ctive#heet.@aste Cortar #election.6ut Orde!ar Asce!de!te #election.#ort Key%*<3ange,: %:-, $rder%*<>l scending, 7eader*<>lEuess, L $rder6ustom*<%, +atch6ase*<;alse, $rientation*<>l8op8o)ottom Orde! 6esce!de!te #election.#ort Key%*<3ange,: %:-, $rder%*<>l"escending, 7eader*<>lEuess, L $rder6ustom*<%, +atch6ase*<;alse, $rientation*<>l8op8o)ottom Buscar 6ells.;ind,Ihat*<:Ra*o!:, fter*< ctive6ell, LooM?n*<>l;ormulas, LooM t L *<>l@art, #earch$rder*<>l)y3oNs, #earch"irection*<>l4e>t, +atch6ase*< L ;alse-. ctivate I!sertar )ila #election.'ntire3oN.?nsert Eli*i!ar )ila #election.'ntire3oN."elete I!sertar Colu*!a #election.'ntire6olumn.?nsert Eli*i!ar Colu*!a #election.'ntire6olumn."elete A rir u! Li ro IorMbooMs.$pen ;ilename*<:6*O+is documentosO(ideo sa:e 2'xls: 7ra ar u! Li ro ctiveIorMbooM.#ave s ;ilename*<:6*O+is documentosO=iscis'xls:, ;ile;ormat L *<>l4ormal, @assNord*<::, Irite3es@assNord*<::, 3ead$nly3ecommended*< L ;alse, 6reate)acMup*<;alse 'stos serian algunos cdigos muy comunes en Excel, pero si usted desea puede generar mas cdigos de otras opciones, es cuestin de que los ocupe.

ntes de pasar a la )ase 2 es necesario que domines generar Macros y $bservar sus cdigos que se encuentran en la )ase ,' 3ecuerda esto es de mucha practica y para eso es necesario aprender bien las fases nteriores. . )ase 2 CREAN6O )ORM?LARIOS @ PRO7RAMAN6OLOS ntes de 'mpezar esta nueva fase te recomiendo que salgas de Excel y vuelvas a entrar, esto es por si estuviste practicando los cdigos, para que no quede una secuencia de +acros. hora te enseGare a dominar lo m>imo de '>cel que es crear formularios y programarlos, bueno un formulario es una ventana que se programa por medio de controles y estos controles responden a sucesos que nosotros programamos. 8odo esto se encuentra dentro de (isual )asic. continuacin +uestro como crear un formulario y como programarlo* %. @resione La 8eclas Alt + )11B para entrar al editor de Visual Basic. 2. ctiva las siguientes opciones* "e clic en el Me!8 Ver y elija la opcin Ex=lorador de Proyectos "e clic en el Me!8 (er y elija la opcin Ve!ta!a Pro=iedades B. "el Me!8 I!sertar elija la $pcin ?ser)or*' 'sto inserta el ;ormulario que programaremos con controles. 'n el Ex=lorador de Proyecto se observara que se inserto el ?ser)or*.

8ambin cuando de clic en el ;ormulario ?SER)ORM1 se debe de activar el Cuadro de Cerra*ie!tas, si no se activa de clic en el Me!8 Ver y elija la opcin Cuadro de Cerra*ie!tas.
1.

'lija del Cuadro de Cerra*ie!tas el 6ontrol Eti<ueta el que tiene la A y rrastre dibujando en el ;ormulario ?SER)ORM1 la etiqueta. =uedara el nombre

Label%, despus de un clic en la etiqueta dibujada y podr modificar el nombre de adentro y pondremos ah No* re' #i por error da doble clic en la etiqueta y lo manda a la pantalla de programacin de la etiqueta, solo de doble clic en ?ser)or*1 que se encuentra en el Ex=lorador de Proyecto' J. 'lija del Cuadro de Cerra*ie!tas el control Cuadro de ;exto el que tiene a y arrastre dibujando en el formulario ?SER)ORM1 el cuadro de te>to a un lado de la etiqueta que dice No* re. 'l cuadro de te>to debe de estar vaco y su nombre ser ;ext ox1, el nombre solo aparecer en el control. P. 7aga los dos pasos anteriores igualmente poniendo 6irecci! en la La el, y ;elD:o!o en la La el2 y tambin dibQjeles su 8e>tbo>. 'sto quedara as despus de haberlo hecho

Si tiene algn problema al dibujar las etiquetas o los cuadros de te>to, solo cmbiele el nombre a la etiqueta o el cuadro de te>to en la Ve!ta!a Pro=iedades la opcin se llama $Na*e&' 'l 'rror que marque puede ser No* re A* i#uoB pero si le cambias el 4ombre al control se quitara el error. @uedes ponerle cualquier nombre en lugar de Label%.

Solo altera esto si te *arca errorB si NO dDEalo asF'

Los controles como las 'tiquetas y 6uadros de 8e>tos pueden modificrseles algunas opciones en la (entana @ropiedades @ara hacer esto es necesario tener conocimiento sobre las propiedades de los controles. 4o altere las propiedades si no las conoce. D. 'lija del Cuadro de Cerra*ie!tas el control Bot! de Co*a!do y rrastre dibujando en el ;ormulario ?SER)ORM1 el )otn, despus de un clic en el nombre del )otn dibujado y podr modificar el nombre y pondremos ah I!sertar' #i por error da doble clic en la )otn y lo manda a la pantalla de programacin de la etiqueta, solo de doble clic en ?ser)or*1 que se encuentra en el Ex=lorador de Proyecto'

s quedara el ;ormulario formado por los controles*

/.

hora de doble clic sobre el control ;ext ox1 para programarlo y despus inserte el siguiente cdigo*

@rivate #ub 8e>t)o>%L6hange,Ra!#e$%AG%&'Select Acti(eCell')or*ulaR1C1 + ;extBox1 'nd #ub 'sto indica que se valla a AG y escriba lo que hay en el ;ext ox1

Nota.CLo que esta en azul lo genera '>cel automticamente, usted solo escribir lo que
esta en 4egrita. @ara volver al )or*ulario y programar el siguiente 8e>tbo> de doble clic en ?ser)or*1 que se encuentra en el Ex=lorador de ProyectoB o simplemente de clic en Ver O Eeto en el mismo Ex=lorador de Proyecto. !. hora de doble clic sobre el control ;ext ox, para programarlo y despus inserte el siguiente cdigo* @rivate #ub 8e>t)o>2L6hange,Ra!#e$%BG%&'Select Acti(eCell')or*ulaR1C1 + ;extBox, 'nd #ub 'sto indica que se valla a BG y escriba lo que hay en el ;ext ox, @ara volver al )or*ulario y programar el siguiente 8e>tbo> de doble clic en ?ser)or*1 que se encuentra en el Ex=lorador de ProyectoB o simplemente de clic en Ver O Eeto en el mismo Ex=lorador de Proyecto. %&. hora de doble clic sobre el control ;ext ox2 para programarlo y despus inserte el siguiente cdigo* @rivate #ub 8e>t)o>BL6hange,Ra!#e$%CG%&'Select Acti(eCell')or*ulaR1C1 + ;extBox, 'nd #ub 'sto indica que se valla a CG y escriba lo que hay en el ;ext ox2 @ara volver al )or*ulario y programar el Bot! de Co*a!do Insertar de doble clic en ?ser)or*1 que se encuentra en el Ex=lorador de ProyectoB o simplemente de clic en Ver O Eeto en el mismo Ex=lorador de Proyecto. %%. hora de doble clic sobre el control Bot! de Co*a!do para programarlo y despus inserte el siguiente cdigo* @rivate #ub 6ommand)utton%L6licM,Re* i!serta u! re!#l! Selectio!'E!tireRoH'I!sert Re* E*=ty Li*=ia Los ;ext ox ;extBox1 + E*=ty ;extBox, + E*=ty ;extBox2 + E*=ty

Re* ;ext ox1'Set)ocus E!(Fa el cursor al ;ext ox1 =ara (ol(er a ca=turar los datos ;extBox1'Set)ocus 'nd #ub

Nota'3'l

comando Re* es empleado para poner comentarios dentro de la programacin, el comando E*=ty es empleado para vaciar los 8e>tbo>. %2. hora presione el botn EEecutar ?serI)or* que se encuentra en la barra de herramientas o simplemente la tecla de funcin )J

#e activara el ?ser:or*1 y todo lo que escriba en los 8e>tbo> se escribir en '>cel y cuando presione el botn ?nsertar, se insertara un rengln y se vaciaran los 8e>tbo> y despus se mostrara el cursor en el ;ext ox1. 'n este archivo que usted bajo se encuentra una hoja de '>cel Libre de (irus o sea que esta limpio, bralo sin ningQn problema, ya que ah viene un ejemplo de la +acro ya realizada y solo la ejecutara y vera como trabajan las +acros. 'spero y ests pendiente porque vienen mas partes sobre este interesante curso de +acros.

Potrebbero piacerti anche