12
Microsoft Excel 2013 Professional Página 1 de 12 UNIVERSIDAD DE EL SALVADOR FACULTAD DE INGENIERIA Y ARQUITECTURA ESCUELA DE INGENIERIA DE SISTEMAS INFORMATICOS MANEJO DE SOFTWARE PARA MICROCOMPUTADORAS CICLO II-2015 MATERIAL COMPLEMENTARIA VBA Micr!"# E$c%& 201' Pr"%!!i()& O*+%#i,  Conocer el entorno de t rabajo de Visual basic para Aplicaciones.  Conocer el abito de los procediientos. ENTORNO DE TRABAJO L%(./)+% Vi!/)& B)!ic )r) A&ic)ci(%! VBA Coo seguraente sabeos! Excel es una potente aplicaci"n incluida en el pa#uete Microsoft $ffice #ue nos proporciona %erraientas & funciones destinadas a anali'ar! copartir & adinistrar datos. Adeás! Excel nos ofrece aplias posibilidades para autoati'ar tareas #ue reali'aos de anera cotidiana! & para crear aplicaciones basadas en el procesaiento & el análisis de datos nu(ricos por edio de la creaci"n de acros. Visual )asic para Aplicaciones *Visual )asic for Aplications+! tabi(n conocido por su abre,iatura V)A! es un lenguaje de prograaci"n co-n a todas las aplicaciones del pa#uete Microsoft $ffice! coo as tabi(n en otros prograas coo Corel /ra o Autocad. VBA 3 Vi!/)& B)!ic VB Visual )asic es un lenguaje de prograaci"n orientado a objetos #ue perite crear aplicaciones. Visual )asic para Aplicaciones es una ,ersi"n de Visual )asic #ue se encuentra ebebido en las aplicaciones de Microsoft $ffice & #ue perite escribir un conjunto de instrucciones *acros+ para prograar los distintos objetos de Excel! coo por ejeplo! una %oja de cálculo! un conjunto de celdas o de gráficos. /e esta anera! es posible autoati'ar las tareas #ue r eali'aos en fora repetiti,a en Excel! & %asta podeos crear aplicaciones. a diferencia entre Visual )asic & Visual )asic para Aplicaciones radica en #ue el priero nos perite! entre otras cosas! reali'ar ejecutables #ue se pueden instalar en cual#uier coputadora bajo el entorno indos. En cabio! V)A solo perite escribir instrucciones #ue se ejecutarán dentro del entorno Excel. V)A es un lenguaje de fácil aprendi'aje. El c"digo en V) & en V)A es parecido! por lo #ue! si teneos alg-n conociiento de prograaci"n en V)! podreos utili'arlo para coprender el lenguaje de acros. L)! 4)cr! Venios encionando el t(rino acro! pero #u( es una acro4 Podeos decir #ue una acro es una secuencia de instrucciones escritas en lenguaje V)A #ue se alacenan en un "dulo. Cuando in,ocaos una acro! &a sea presionando un bot"n o una cobinaci"n de teclas! se desencadenarán las instrucciones alacenadas en ella. Con las acros no solaente podeos agili'ar las tareas #ue reali'aos con frecuencia! sino #ue tabi(n es posible apliar la funcionalidad de Excel! creando nue,as funciones para resol,er cálculos #ue no podeos reali'ar con las funciones estándares del prograa. 5eneos dos aneras de crear una acro. 6na es epleando la %err aienta 7rabar acros! & la otra es escribiendo las instrucciones en el Editor de Visual )asic #ue se encuentra ebebido en Excel. Esto lo trabajaos en la gua de laboratorio 8 en el tea de acros. a anera ás rápida & sencilla de crear una acro es utili'ando la grabadora de acros! &a #ue no necesitaos tener ning-n conociiento pre,io de prograaci"n en V)A. Cuando epleaos la %erraienta 7rabar acros! lo #ue %aceos es ir grabando todas las operaciones *paso a paso+ #ue ,aos reali'ando en nuestro libro %asta #ue deteneos la grabaci"n. A edida #ue reali'aos las operaciones! la grabadora de acros las ,a con,irtiendo al lenguaje V)A. 9i bien eplear este (todo es ás fácil! nos ,ereos liitados &a #ue solo podreos crear acros siples para lle,ar a cabo una tarea particular.

Material Complementario VBA

Embed Size (px)

Citation preview

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 1/12Microsoft Excel 2013 Professional Página 1 de 12

UNIVERSIDAD DE EL SALVADORFACULTAD DE INGENIERIA Y ARQUITECTURAESCUELA DE INGENIERIA DE SISTEMAS INFORMATICOSMANEJO DE SOFTWARE PARA MICROCOMPUTADORASCICLO II-2015

MATERIAL COMPLEMENTARIA VBA

Micr!"# E$c%& 201' Pr"%!!i()&

O*+%#i, 

•  Conocer el entorno de trabajo de Visual basic para Aplicaciones.

•  Conocer el abito de los procediientos.

ENTORNO DE TRABAJO L%(./)+% Vi!/)& B)!ic )r) A&ic)ci(%! VBA

Coo seguraente sabeos! Excel es una potente aplicaci"n incluida en el pa#uete Microsoft $ffice #ue nos proporciona

%erraientas & funciones destinadas a anali'ar! copartir & adinistrar datos. Adeás! Excel nos ofrece aplias posibilidades para

autoati'ar tareas #ue reali'aos de anera cotidiana! & para crear aplicaciones basadas en el procesaiento & el análisis de datos

nu(ricos por edio de la creaci"n de acros.

Visual )asic para Aplicaciones *Visual )asic for Aplications+! tabi(n conocido por su abre,iatura V)A! es un lenguaje de prograaci"n

co-n a todas las aplicaciones del pa#uete Microsoft $ffice! coo as tabi(n en otros prograas coo Corel /ra o Autocad.

VBA 3 Vi!/)& B)!ic VBVisual )asic es un lenguaje de prograaci"n orientado a objetos #ue perite crear aplicaciones. Visual )asic para Aplicaciones es una

,ersi"n de Visual )asic #ue se encuentra ebebido en las aplicaciones de Microsoft $ffice & #ue perite escribir un conjunto de

instrucciones *acros+ para prograar los distintos objetos de Excel! coo por ejeplo! una %oja de cálculo! un conjunto de celdas

o de gráficos. /e esta anera! es posible autoati'ar las tareas #ue reali'aos en fora repetiti,a en Excel! & %asta podeos crear

aplicaciones.

a diferencia entre Visual )asic & Visual )asic para Aplicaciones radica en #ue el priero nos perite! entre otras cosas! reali'ar

ejecutables #ue se pueden instalar en cual#uier coputadora bajo el entorno indos. En cabio! V)A solo perite escribir

instrucciones #ue se ejecutarán dentro del entorno Excel.

V)A es un lenguaje de fácil aprendi'aje. El c"digo en V) & en V)A es parecido! por lo #ue! si teneos alg-n conociiento de

prograaci"n en V)! podreos utili'arlo para coprender el lenguaje de acros.

L)! 4)cr!Venios encionando el t(rino acro! pero #u( es una acro4 Podeos decir #ue una acro es una secuencia de instrucciones

escritas en lenguaje V)A #ue se alacenan en un "dulo. Cuando in,ocaos una acro! &a sea presionando un bot"n o una

cobinaci"n de teclas! se desencadenarán las instrucciones alacenadas en ella.

Con las acros no solaente podeos agili'ar las tareas #ue reali'aos con frecuencia! sino #ue tabi(n es posible apliar la

funcionalidad de Excel! creando nue,as funciones para resol,er cálculos #ue no podeos reali'ar con las funciones estándares del

prograa.

5eneos dos aneras de crear una acro. 6na es epleando la %erraienta 7rabar acros! & la otra es escribiendo las instrucciones

en el Editor de Visual )asic #ue se encuentra ebebido en Excel. Esto lo trabajaos en la gua de laboratorio 8 en el tea de acros.

a anera ás rápida & sencilla de crear una acro es utili'ando la grabadora de acros! &a #ue no necesitaos tener ning-n

conociiento pre,io de prograaci"n en V)A. Cuando epleaos la %erraienta 7rabar acros! lo #ue %aceos es ir grabando

todas las operaciones *paso a paso+ #ue ,aos reali'ando en nuestro libro %asta #ue deteneos la grabaci"n. A edida #ue

reali'aos las operaciones! la grabadora de acros las ,a con,irtiendo al lenguaje V)A. 9i bien eplear este (todo es ás fácil!

nos ,ereos liitados &a #ue solo podreos crear acros siples para lle,ar a cabo una tarea particular.

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 2/12Microsoft Excel 2013 Professional Página 2 de 12

Q/ %! %& E6i#r 6% Vi!/)& B)!ic7El Editor de Visual )asic! tabi(n llaado V)E*Visual )asic Editor+! es la %erraienta #ue nos ser,irá para desarrollar! probar & odificar las

acros #ue utili'areos junto con los libros de trabajo. En esta gua nos dedicareos a conocer los principales coponentes de su interfa'

& sus %erraientas ás iportantes. 9e

ejecuta en su propia ,entana! separada de la de

Excel! & podeos acceder a (l de diferentes

aneras:

1. 

;aciendo clic en el bot"n Visual )asic de la

fic%a D%!)rr&&)6r8 2.

 

Cuando &a teneos una acro creada!

pulsando el bot"n Modificar del cuadro dediálogo Macros! #ue aparece al presionar

el bot"n Macros de la fic%a /esarrollador.

3.  Presionando la cobinaci"n de teclas

Alt<=11.

En esta ,entana! encontraos las clásicas barra

de en- & barra de %erraientas ubicadas en

la parte superior de la ,entana.

E& %(#r( 6% VBEA continuaci"n! conocereos en detalle algunas de las %erraientas principales #ue integran la ,entana del Editor de Visual )asic.

L) *)rr) 6% 4%(9A tra,(s de la barra de en- accedeos a la a&ora de las funciones de V)E para desarrollar! coprobar & guardar las acros. En ella!

encontrareos las siguientes opciones:

1.  Arc%i,o: agrupa los coandos #ue periten adinistrar los arc%i,os con c"digo V)A! coo 7uardar ibro! >priir...! >portar

arc%i,o...o Exportar arc%i,o....

2. 

Edici"n: contiene los coandos #ue nos a&udarán a trabajar con la ,entana donde se inclu&e el c"digo V)A! coo los clásicos Copiar!

Cortar! Pegar! )uscar & ?eepla'ar. 5abi(n inclu&e un conjunto de coandos #ue nos proporcionan inforaci"n sobre el objeto con

el cual estaos trabajando *>ntelli9ense+ en la ,entana de C"digo:

•  ista de propiedades & (todos: uestra un en- con las propiedades & los (todos de un objeto despu(s de #ue escribios el

punto.

•  ista de constantes: presenta un en- eergente con todas las constantes disponibles para una propiedad o (todo.

•  >nforaci"n rápida: para acceder a la inforaci"n rápida de un eleento. Cuando escribios una palabra reser,ada! seguida de

un espacio o de un par(ntesis! nos uestra inforaci"n sobre la sintaxis de ese eleento & resalta el paráetro actual.

•  >nforaci"n de paráetros: brinda inforaci"n sobre los paráetros #ue se pueden utili'ar en una funci"n.

• 

Palabra copleta: usaos esta %erraienta para copletar una palabra cla,e #ue %eos coen'ado a escribir. Es decir! si lacantidad de letras #ue %eos escrito son suficientes para definir una palabra cla,e -nica! IntelliSence  copleta el resto de la

palabra.

•  Marcadores: uestra un en- #ue nos perite despla'arnos a tra,(s de los arcadores.

3.  Ver: nos perite ostrar u ocultar caractersticas del entorno del Editor de V)A. A#u encontraos las opciones para acti,ar & desacti,ar

las diferentes ,entanas del editor coo! por ejeplo: C"digo! >nediato! ocales! >nspecci"n! Propiedades! Explorador de Pro&ectos.

Más adelante! explicareos con ás detalle cada una de ellas. Con la opci"n )arra de %erraientas! podreos seleccionar las barras

de %erraientas #ue #uereos antener ,isibles.

@. 

>nsertar: desde a#u podeos insertar procediientos! forularios! "dulos & "dulos de clase.

.  =orato: este en- tiene ,arias opciones #ue nos periten cabiar el taaBo & el aspecto de un grupo de controles de un forulario:

botones! eti#uetas! cuadro de texto! entre otros. Por ejeplo! el suben- >gualar taaBo nos perite %acer #ue un grupo de controles

tengan el iso anc%o! alto o abos.

.  /epuraci"n: despu(s de escribir una acro necesitareos probarla para ,er si tiene errores. Este en- re-ne las %erraientas #ue nos

peritirán ejecutar el c"digo & alertarnos de alg-n error! coo! por ejeplo! Paso a paso por instrucciones! Paso a paso por

procediientos.

D. 

Ejecutar: contiene las %erraientas para ejecutar! interrupir & restablecer un procediiento ientras estaos en odo de desarrollo!

es decir! desde la ,entana de c"digo.

8. 

;erraientas: desde este en-! podreos odificar las propiedades de los pro&ectos V)A! coo as tabi(n las opciones generales

del V)E! por ejeplo! controlar la apariencia del c"digo *fuente utili'ada! color! taaBo+! controlar #u( ,entanas son acoplables! entre

otras. Más adelante! describireos estas %erraientas.

Copleentos: perite el acceso al Adinistrador de copleentos. os copleentos de Excel son arc%i,os #ue tienen la

extensi"n .FA o .FAM & guardan inforaci"n de c"digo creado en Visual )asic para Aplicaciones! coo funciones & los procediientos!

#ue utili'aos de anera frecuente.

10.  Ventana: contiene los coandos #ue nos periten organi'ar las ,entanas del Editor Visual )asic.

11.  A&uda: desde esta opci"n accedeos a la a&uda del Visual )asic.

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 3/12Microsoft Excel 2013 Professional Página 3 de 12

L) *)rr) 6% :%rr)4i%(#)! E!#;(6)r/e anera predeterinada! debajo de la )arra de en-! se encuentra la barra de %erraientas Estándar! #ue al igual #ue cual#uier otra

barra de %erraientas contiene los botones con los coandos co-nente ás usados. En la siguiente 7ua ,isual! explicareos cada uno

de sus eleentos.

1. 

Ver Microsoft Excel: perite ir de la ,entana del Editor de Visual )asic a la %oja de trabajo de Microsoft Excel.

2.  7uardar: guarda el libro! incluidos el pro&ecto & todos sus coponentes.

3. 

Copiar: copia el texto u objeto seleccionado & lo coloca en el Portapapeles.

@.  )uscar: abre el cuadro de diálogo )uscar! para rastrear un texto especfico.

.  ?e%acer: a la in,ersa del bot"n /es%acer! este bot"n re%ace las -ltias acciones de edici"n.

>nterrupir: detiene la ejecuci"n de un procediiento & cabia al odo de interrupci"n.

D.  Modo de /iseBo: perite acti,ar o desacti,ar el odo /iseBo.

8. 

Ventana de Propiedades: abre la ,entana Propiedades donde ,isuali'areos las diferentes propiedades de cada uno de los objetos

de V)A #ue seleccioneos..  Cuadro de %erraientas: este bot"n está disponible cuando un UserForm está acti,o. Perite ostrar u ocultar el cuadro de

%erraientas #ue contiene todos los controles & objetos #ue se pueden insertar en un forulario.

10.  A&uda de Microsoft Visual )asic para Aplicaciones: brinda acceso a la a&uda de Microsoft Visual )asic.

11. 

Exainador de objetos: perite abrir la ,entana del Exainador de objetos donde ,isuali'areos una lista con los objetos! sus

propiedades! (todos & constantes.

12.  Explorador de pro&ectos: abre una ,entana #ue uestra los pro&ectos abiertos *arc%i,os de Excel+ & sus objetos *%ojas de cálculo!

forularios! "dulos & "dulos de clase+.

13.  ?establecer: restablece el pro&ecto interrupido.

1@. 

Ejecutar acro: perite ejecutar un procediiento o un UserForm dependiendo de d"nde se encuentre el cursor. 9i las ,entanas

de C"digo UserForm no están acti,as! entonces ejecutará una acro.

1.  /es%acer: des%ace la -ltia acci"n de edici"n.

1.  Pegar: inserta el contenido del Portapapeles en el lugar donde se encuentra el cursor.

1D.  Cortar: perite #uitar el texto u objeto seleccionado & colocarlo en el Portapapeles.

18. 

>nsertar 6ser=or: si %aceos clic directaente sobre el icono! se insertará un forulario *6ser=or+. 9i desplegaos la flec%a!,ereos los coandos del en- >nsertar: 6ser=or! M"dulo! M"dulo de clase&

Procediiento. 6n forulario es una ,entana #ue puede contener distintos

controles! coo botones de coandos! eti#uetas! cuadros de texto! entre otros.

L) *)rr) 6% :%rr)4i%(#)! E6ici<(6na barra de %erraienta #ue es de gran utilidad cuando estaos escribiendo un c"digo es la

barra de %erraientas Edici"n. Para acti,arla! debeos ingresar al en- Ver! %acer un clic

sobre la opci"n )arra de %erraientas &! luego! seleccionar la opci"n Edici"n. Esta aparecerá

coo una barra flotante! pero si %aceos un clic sostenido con el ouse sobre el sector del

ttulo & la arrastraos! podreos ubicarla donde nos resulte ás c"odo para trabajar.

En la siguiente 7ua ,isual! explicareos para #u( sir,en las %erraientas de esta barra.

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 4/12Microsoft Excel 2013 Professional Página @ de 12

1.  ista de propiedades & (todos: uestra una lista de las propiedades & los (todos #ue podeos aplicar al objeto seleccionado.

2.  >nforaci"n rápida: uestra un cuadro #ue proporciona inforaci"n de sintaxis del eleento #ue %eos seleccionado.

3.  Palabra copleta: terina de escribir la palabra cla,e #ue %eos coen'ado a escribir en la ,entana C"digo! una ,e' #ue cuenta con

los caracteres suficientes para identificarla.

@.  9angra i'#uierda: despla'a a la i'#uierda el texto seleccionado. E#ui,ale a presionar la cobinaci"n de teclas 9;>=5 < 5A).

.  )lo#ue de coentarios: con,ierte un texto seleccionado en un coentario. os coentarios son lneas dentro de nuestro c"digo #ue

no serán toadas en cuenta al oento de reali'ar la ejecuci"n del procediiento.

.  Alternar arcador: lo epleaos para acti,ar o desacti,ar arcadores! #ue nos periten despla'arnos de fora sencilla a tra,(s del

c"digo.

D.  Alternar anterior: se despla'a al arcador anterior.

8. 

)orrar todos los arcadores: eliina todos los arcadores #ue se encuentren acti,ados. Cuando cerraos el editor! los arcadores se

borran..  Marcador siguiente: se despla'a al arcador siguiente.

10. 

)lo#ue sin coentarios: transfora el texto seleccionado en c"digo.

11.  Alternar punto de interrupci"n: coloca un punto de interrupci"n en la lnea de c"digo seleccionada. o utili'aos para depurar c"digo.

12. 

9angra derec%a: despla'a %acia la derec%a el texto seleccionado. E#ui,ale a pulsar la tecla 5A).

13.  >nforaci"n de paráetros: uestra inforaci"n sobre los paráetros de la instrucci"n #ue %eos seleccionado.

1@.  ista de constantes: despliega las constantes del sistea #ue se aplican al arguento actual. 6na constante es un objeto de datos #ue

tiene un ,alor fijo #ue no puede ser alterado. V)A posee un gran n-ero de constantes intrnsecas #ue podeos utili'ar para ,erificar

aspectos tales coo los tipos de datos! o podeos utili'ar coo arguentos fijos en funciones & expresiones

/ebajo de las diferentes barras! ,ereos #ue la interfa' del V)E se di,ide de anera predeterinada en tres sectores: la ,entana Explorador

de Pro&ectos! la ,entana C"digo & la ,entana Propiedades. Explicareos cada una de ellas en detalle.

E& E$&r)6r 6% Pr3%c#!

El Explorador de Pro&ectos se ubica en el sector superior i'#uierdo de la ,entana de V)A. 9i! por alguna ra'"n! no estu,iera ,isible! lo podeosacti,ar de las aneras #ue detallaos a continuaci"n:

•  9eleccionando la opci"n Explorador de Pro&ectos del en- Ver.

•  Presionando la cobinaci"n de teclas C5? < ?.

•  ;aciendo un clic sobre el bot"n Explorador de

Pro&ectos #ue se encuentra en la )arra de

%erraientas Estándar.

Para coprender de anera clara la utilidad de esta

,entana! priero es necesario definir #u( es un pro&ecto.

6n pro&ecto es un libro de Excel #ue contiene un

conjunto de objetos: %ojas de trabajo! "dulos &

forularios. Entonces! a tra,(s de esta ,entana! es

posible gestionar los pro&ectos & o,ernos entre sus

distintos coponentes! coo as tabi(n entre losdiferentes pro&ectos #ue tengaos abiertos.

En la ,entana ,eos! en fora de estructura jerár#uica!

los pro&ectos #ue teneos abiertos & los objetos #ue

estos contienen. El ni,el superior de la estructura es el

pro&ecto actual! #ue! de anera predeterinada! recibe

el nobre VBAProyect(Libro1).

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 5/12Microsoft Excel 2013 Professional Página de 12

En el ni,el inediataente inferior al pro&ecto! aparece la carpeta: 

Micr!"# E$c%& O*+%#! esta carpeta re-ne los objetos #ue foran parte del libro! coo las %ojas & las %ojas de gráfico. El eleento llaado

ThisWorkbook  representa el libro copleto. En cada uno de estos objetos! podeos escribir nuestro propio c"digo *procediientos+. El

c"digo #ue inclu&aos en el objeto ThisWorkbook afectará al resto de los objetos.

A edida #ue ,aos insertado forularios! "dulos o "dulos de clase! se crearán las siguientes carpetas:

•  Fr4/&)ri!: agrupa los objetos =orularios! llaados tabi(n UserFormso  cuadros de diálogos personali'ados. os forularios

contienen una serie de controles #ue nos ,an a peritir introducir! odificar o ,isuali'ar datos.

•  M!"los: tabi(n se los denoina "dulos estándarG en ellos escribireos procediientos. 6n procediiento es un conjunto de

instrucciones V)A #ue sir,en para reali'ar una tarea especfica. Por ejeplo! podeos generar un procediiento #ue seleccione un

conjunto de datos! para luego crear con ellos un gráfico de barras o de otra clase. 6n "dulo puede contener ,arios procediientos. Asu ,e'! es posible tener tantos "dulos coo necesiteos dentro de un iso libro. Estos pueden ser exportados o iportados entre

distintos pro&ectos. 9e guardan bajo un nobre & poseen la extensi"n .)A9 *#ue identifica a los arc%i,os básicos+.

•  M<6/&! 6% c&)!%: son "dulos especiales #ue nos periten

crear nuestros propios objetos! dotándolos de di,ersas

propiedades. 5ienen la extensi"n .C9 *arc%i,os de clase+ &!

al igual #ue los "dulos estándares! pueden ser exportados

o iportados.

En la parte superior de la ,entana Explorador de Pro&ectos! %a&

una barra de %erraientas #ue contiene tres botones #ue

detallareos en la 7ua ,isual #ue presentaos a continuaci"n.

1.  Ver c"digo: uestra la ,entana de c"digo para el "dulo

seleccionado.

2. 

Ver objeto: uestra la %oja o forulario #ue %eosseleccionado en la carpeta de objetos.

3.  Alternar carpetas: perite ,er todos los objetos en una sola

carpeta! independienteente del tipo de objeto.

L) ,%(#)() C<6i.a ,entana C"digo! tabi(n llaada Editor de c"digo! es la

#ue epleareos para escribir! ostrar & editar todo el

c"digo Visual )asic #ue ,a a gestionar una acro.

Cada eleento de un pro&ecto tiene asociado una ,entana

#!i$o. Podeos tener abiertas tantas ,entanas coo

necesiteos! pudiendo copartir c"digo entre ellas ediante

las acciones de cortar! copiar & pegar. 9i no está ,isible! la

acti,aos de las siguientes aneras:

• 

;aciendo un doble clic con el ouse sobre alg-n objetode la ,entana Explorador de Pro&ectos. 

•  9eleccionando del en- Verla opci"n C"digo.

•  Presionando la tecla =D

En funci"n del objeto #ue deseeos codificar! esta ,entana

tendrá algunas particularidades deterinadas. 9i es un "dulo

estándar de c"digo! tendrá solo funciones & procediientos. 9i

es un "dulo de c"digo de un forulario! contendrá! adeás

de los procediientos norales! los (todos para los e,entos

del objeto Form"l%rio & Controles. En cabio! si es un "dulo

de clase! tendrá procediientos de propiedades! la definici"n

de la clase & (todos! entre otros.

/ebajo de la barra de ttulo de la ,entana! ,ereos dos listas

desplegables *poseen dos flec%as a su derec%a+ #ue nos ,an a

peritir o,ernos de anera fácil & rápida dentro del c"digo

V)A.

A la i'#uierda! teneos el cuadro $bjetos! #ue uestra el

nobre del objeto #ue se encuentra seleccionado. 9i el objeto es un "dulo! solo ostrará la opci"n general. En cabio! si el objeto es un

forulario! presentará una lista de todos los objetos asociados con (l.

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 6/12Microsoft Excel 2013 Professional Página de 12

A la derec%a! se encuentra el cuadro ProcediientoHE,ento. 9i %eos seleccionado un "dulo estándar de c"digo! tendrá solo funciones &

Procediientos. En cabio! si es un

"dulo de clase! tendrá procediientos

de propiedades! la definici"n de la clase &

(todos! entre otros. 9i es un "dulo de

c"digo de un forulario! contendrá

adeás de los procediientos norales!

los (todos para los e,entos del objeto

=orulario & Controles.

R%c/%r6% El traductor es un prograa #ue con,ierte el c"digo fuente a un c"digo objeto & luego a un c"digo ejecutable. Puede ser uncopilador o un int(rprete. El priero de ellos se encarga de re,isar la sintaxis &! si no se detectan errores! %ace la traducci"n del c"digo

fuente a un lenguaje de bajo ni,el! ientras #ue el int(rprete %ace la re,isi"n lnea por lnea.

L) ,%(#)() Pri%6)6%!a ,entana Propiedades se ubica en el sector inferior i'#uierdo de la ,entana de V)A. Muestra & perite cabiar las diferentes propiedades

del objeto #ue %eos seleccionado en la ,entana del &'lor%!or !e royectos! ientras estaos en odo de diseBo! es decir! cuando no

estaos ejecutando un procediiento o forulario. 9i esta ,entana no está ,isible! podeos acti,arla ediante los siguientes

procediientos:

•  9eleccionando del en- Ver  la opci"n Ventana Proie!%!es.

•  Presionando la tecla =@.

•  ;aciendo clic sobre el bot"n Ventana de Propiedades #ue se encuentra en la barra de %erraientas Estándar.

/ebajo de la barra de ttulo de la ,entana! ,isuali'aos el

nobre & el tipo del objeto #ue se encuentra actualenteseleccionado. En la parte inferior! ,eos la lista de

propiedades del objeto. 9i seleccionaos un libro! una %oja o

un forulario! tendreos una gran cantidad de propiedades.

En cabio! cuando seleccionaos un "dulo estándar! la

-nica propiedad #ue ,ereos será el nobre del "dulo

*Iae+.

Es posible ,isuali'ar las propiedades del objeto ordenadas en

fora alfab(tica o agrupada por categoras %aciendo clic en

las solapas correspondientes de esta ,entana.

O#r)! ,%(#)()! Adeás de las tres ,entanas #ue

describios antes! existen otras #ue nos a&udarán a escribir

& probar el c"digo! coo la ,entana >nediato! la ,entanaocales & la ,entana >nspecci"n.

L) ,%(#)() I(4%6i)#a ,entana >nediato! tabi(n llaada ,entana de

depuraci"n! perite probar una instrucci"n! un coando o

una funci"n del lenguaje V)A cuando estaos en odo de

diseBo. Podeos acti,arla de las siguientes aneras:

•  9eleccionando del en- Ver la opci"n Ventana >nediato.

•  Presionando la cobinaci"n de teclas C5? < 7.

Esta %erraienta uestra los resultados de las instrucciones #ue introducios en esta ,entana! sin tener #ue escribirlas en un procediiento.

/e esta anera! es posible coprobar los efectos de ciertos ,alores en un procediiento o funci"n de fora aislada.

as instrucciones #ue escribaos en esta ,entana se ejecutarán luego de presionar la tecla EI5E?. Podeos ,ol,er a ejecutar cual#uier

instrucci"n #ue se encuentre en esta ,entana! ubicando el cursor donde está la lnea & presionando otra ,e' la tecla. Excel recuerda todas

las instrucciones #ue escribaos en la ,entana >nediato! incluso despu(s de %aberla cerrado. 9u contenido se eliinará una ,e' #ue

salgaos del prograa.

L) ,%(#)() Lc)&%!a ,entana ocales se utili'a para coprobar el ,alor de las ,ariables & los objetos locales del "dulo en el #ue nos encontreos durante la

ejecuci"n del c"digo. Para acti,arla! ,aos al en- Ver & seleccionaos la opci"n Ventana ocales.

L) ,%(#)() I(!%cci<(a ,entana >nspecci"n perite agregar objetos para ,er el ,alor actual de una ,ariable o expresi"n! cuando estaos en odo de interrupci"n.

Para acti,arla! debeos seleccionar la opci"n dentro del en- Ver.

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 7/12Microsoft Excel 2013 Professional Página D de 12

E& E$)4i()6r 6% *+%#!El Exainador de objetos nos pro,ee de los edios básicos para encontrar los objetos! sus propiedades & (todos asociados! #ue utili'aos

en los pro&ectos V)A. Para acti,arlo:

•  9eleccionaos del en- Ver la opci"n Exainador de objetos.

•  Presionaos la tecla =2.

•  ;aceos clic en el bot"n Exainador de objetos de la barra de %erraientas Estándar.

6na ,e' #ue abrios la ,entana! ,ereos una jerar#ua de los objetos #ue aparecen en V)A! junto con sus (todos & propiedades. En la

siguiente 7ua ,isual! explicareos en detalle cada una de sus partes.

1.  Cuadro Pro&ectoH)iblioteca: despliega una lista con los nobres de todas las bibliotecas & los pro&ectos #ue se encuentran disponibles

en el pro&ecto acti,o.

2.  )arra de %erraientas: contiene los accesos rápidos para trabajar con el Exainador de objetos.

3.  El )ot"n Vol,er nos sit-a en el -ltio lugar donde estu,ios con el exainador & el Botn  A%n*%r  nos sit-a en el -ltio sitio donde

estu,o el exainador antes de presionar Vol,er.

@.  )ot"n Ver definici"n: si el iebro está definido en nuestro c"digo! al presionar este bot"n se despla'ará a esa parte del c"digo.

)ot"n A&uda: nos proporciona una a&uda en lnea para el eleento #ue tengaos seleccionado.

.  )ot"n Copiar al Portapeles: copia la inforaci"n #ue se uestra actualente al portapapeles. uego podeos usar la opci"n Pegar para

incluir esta inforaci"n en nuestro c"digo.

D. 

)ot"n MostrarH$cultar: abre u oculta el cuadro ?esultados de b-s#ueda.

8.  )ot"n )-s#ueda: perite buscar en las bibliotecas #ue %a&aos seleccionado en el cuadro Proyecto=Bibliotec% el texto #ue %a&aos

introducido en el cuadro de texto b-s#ueda.

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 8/12Microsoft Excel 2013 Professional Página 8 de 12

.  ?esultados de la b-s#ueda: uestra una lista con la biblioteca! la clase & el iebro #ue corresponde al texto #ue %eos escrito en el

cuadro de texto de b-s#ueda

10. 

Miebros: proporciona una lista de los (todos & propiedades disponibles de la clase #ue seleccionaos en el cuadro Clases. Por

defecto! los iebros aparecen ordenados en fora alfab(tica.

11.  Panel /etalles: uestra una definici"n del iebro seleccionado.

12.  Clases: uestra todas las clases de la biblioteca #ue %eos seleccionado del cuadro Pro&ectoH)iblioteca. 9i seleccionaos! por ejeplo!

la clase Excel! nos ostrará todos los objetos de Excel.

13. 

Cuadro de texto de b-s#ueda: perite encontrar rápidaente la inforaci"n en una biblioteca en particular. Para ello! seleccionaos

una biblioteca! escribios en el cuadro de texto de b-s#ueda el texto por buscar &! luego! %aceos clic en el bot"n B"sc%r . os resultados

de la b-s#ueda se ostrarán en la secci"n +es"lt%!o !e l% b,s-"e!%. 

C(#r&%! 6% /( "r4/&)ria gran a&ora de los forularios #ue diseBeos se utili'ará para #ue los usuarios puedan ingresar & seleccionar datos de una anera fácil!

por eso! es necesario #ue contengan controles. Microsoft Excel posee una gran ,ariedad de controles #ue podeos agregar a un forulario.

Para esto! usareos el Cuadro de %erraientas #ue aparece al insertar o abrir un forulario & #ue contiene los controles ás utili'ados.

Priero elegios el control #ue necesitaos! luego lo seleccionaos & lo arrastraos al forulario.

9i el Cuadro de %erraientas no se encuentra ,isible! debeos ir al en- Ver & seleccionar la opci"n Cuadro de %erraientas o presionar el

bot"n Cuadro de %erraientas de la barra de %erraientas Estándar. A continuaci"n! describireos las principales propiedades! (todos &

e,entos de los controles ás counes.

E#i>/%#)! L)*%&  : se utili'a para ostrar inforaci"n #ue los usuarios no pueden odificar & para identificar a otros

controles! coo! por ejeplo! los cuadros de texto & las barras de despla'aiento.

C/)6r 6% #%$# T%$#B$ se suele utili'ar para ostrar inforaci"n o para #ue el usuario ingrese datos. El contenido puede

ser editado por el usuario.

C/)6r 6% &i!#) Li!#B$ una lista de eleentos para #ue el usuario seleccione uno o ,arios de ellos. 9i el n-ero de

eleentos supera a los #ue se pueden ostrar en el cuadro de lista! aparecen de anera autoática las barras de

despla'aiento en el control! #ue periten recorrer todos los eleentos.

C/)6r c4*i()6 C4*B$ es un cuadro de lista desplegable. Cuando está cerrado! uestra un solo eleento! pero!

si lo desplegaos ediante la flec%a #ue se encuentra a su derec%a! presenta la lista copleta de eleentos. 6n Cobo)ox

re-ne las caractersticas de un cuadro de texto *5ext)ox+ & un cuadro de lista *ist)ox+! por#ue le perite al usuario elegir

una opci"n de la lista o agregar eleentos a la lista.

B#<( 6% c4)(6 C44)(6B/##( a a&ora de los forularios tiene al enos un control )ot"n de

coando*Coand)utton+! #ue le perite al usuario %acer clic sobre (l para reali'ar acciones! coo! por ejeplo! ejecutar

una funci"n. Por lo general! se utili'a el e,ento Clic para ejecutar alguna acci"n cuando se produce dic%o e,ento.

M)rc Fr)4% se utili'a para agrupar otros controles & darle una a&or funcionalidad a la interfa'. Es especialente -til

cuando el cuadro de diálogo contiene ás de un grupo de controles de opci"n. 5abi(n podeos usarlo para subdi,idir un

forulario & organi'ar su estructura. Para ubicar diferentes controles dentro de un arco! priero debeos dibujar el arco

en el forulario &! luego! arrastrar los controles desde el Cuadro de %erraientas al interior del arco.

B#<( 6% ci<( O#i(B/##( se eplea cuando el usuario tiene #ue seleccionar solo una opci"n entre ,arias disponibles.

Por lo general! se usa en grupos de al enos dos eleentos! & es con,eniente agrupar los botones de opci"n en un control

=rae. /ebeos tener en cuenta #ue todos los controles de este tipo #ue están dentro de un iso arco act-an coo un

solo grupo! independiente de los botones de opci"n #ue se encuentran en otros grupos.

I4).%( I4).% se utili'a para ostrar una foto! gráfico o ilustraci"n dentro de un forulario! #ue puede pro,enir de un

arc%i,o o del Portapapeles. a iagen se guarda en el libro de trabajoG de esta anera! es posible distribuir el libro de Excel

a cual#uier persona sin incluir una copia del arc%i,o de iagen. as iágenes pueden ser del tipo )MP! C6?! 7>=! >C$! JP7.

P;.i() 49&#i&% M/&#iP).% contiene diferentes fic%as. Cada fic%a es una nue,a página #ue puede contener un conjunto

de controles diferentes. a selecci"n de una página oculta a las otras páginas de la %oja. Este control es -til cuando #uereos

anejar una gran cantidad de datos #ue se pueden clasificar en ,arias categoras! por#ue crea una página para cada una.

B)rr) 6% 6%!&)?)4i%(# Scr&&B)r perite rápidos despla'aientos a lo largo de una lista de eleentos. ?ecorre un

deterinado rango de ,alores cuando un usuario %ace clic en las flec%as de despla'aiento! cuando arrastra el 9croll)ox o

%ace clic en alg-n área entre las flec%as de despla'aiento & el 9crollbox. Es siilar a las barras de despla'aiento de cual#uier prograa.

B#<( 6% (94%r Si(B/##( está conforado por una flec%a %acia arriba & otra %acia abajo! & perite al usuario seleccionar un ,alor

%aciendo clic sobre una de las dos flec%as. 9e usa frecuenteente junto con los controles Cuadro de texto o Eti#ueta! #ue uestran el ,alor

actual *Value+ del bot"n de n-ero.

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 9/12Microsoft Excel 2013 Professional Página de 12

PROCEDIMIENTOS

Coo encionaos en la secci"n anterior! en la ,entana del Explorador de pro&ectos ,eos todos los objetos #ue pueden contener c"digo

V)A *los objetos ;ojas! 5%isorKbooK! M"dulos! 6ser=os+. /entro de estos objetos! ,aos a organi'ar el c"digo por edio de los

procediientos. En Excel! podeos distinguir tres tipos de procediientos:

•  os procediientos S/*! tabi(n llaados subrutinas.

•  os procediientos F/(c#i(! #ue son las funciones.

•  os procediientos Pr%r#3 o procediientos de propiedad. 

@4*i# 6% &! rc%6i4i%(#!

/e fora predeterinada! los procediientos son p-blicos *P"blic + en todos los "dulos. Esto significa #ue se los puede llaar desdecual#uier parte del pro&ecto! es decir! cuando un procediiento es llaado para su ejecuci"n! V)A lo busca en el "dulo donde nos

encontreos! si no lo encuentra! entonces continuará la b-s#ueda en el resto de los "dulos del pro&ecto.

En cabio! un procediiento pri,ado *Pri,ate+ solo puede ser llaado desde otros procediientos #ue se encuentren en el iso "dulo.

Prc%6i4i%(#! S/*Podeos decir #ue los procediientos S"b son el conjunto de c"digos V)A contenido por las sentencias 9ub & End 9ub! #ue reali'an una

serie de acciones especficas. Pueden estar copuestos por todas las lneas de c"digo #ue necesiteos! sin ebargo! los procediientos

largos se ,uel,en ás coplejos. Por esto! es aconsejable di,idirlos en procediientos ás pe#ueBos! para #ue cada uno desarrolle una

tarea. As será ás sencillo encontrar o odificar el c"digo de una acro.

Es posible in,ocar o llaar a un procediiento desde otro. Cuando un procediiento llaa a otro! el control se transfiere al segundo &!

cuando finali'a la ejecuci"n del c"digo del segundo procediiento! este de,uel,e el control al #ue lo lla". /istinguios dos tipos de

procediientos 9ub: los procediientos generales & los procediientos de e,entos.

1.  Prc%6i4i%(#! .%(%r)&%! son los procediientos declarados en un "dulo. 6na ,e' #ue se define este tipo de procediiento! se lo

debe llaar especficaente desde el c"digo.

2.  Prc%6i4i%(#! 6% %,%(# este tipo de procediiento peranece inacti,o %asta #ue se lo llaa para responder a e,entos pro,ocados

por el usuario o desencadenados por el sistea. Cuando un objeto en V)A reconoce #ue se %a producido un e,ento! llaa

autoáticaente al procediiento de e,ento utili'ando el nobre correspondiente al e,ento. Más adelante! %ablareos sobre este

tipo de procediientos.

Si(#)$i! 6% &! rc%6i4i%(#! S/*5odo procediiento S"b obligatoriaente debe coen'ar con la sentencia S"b! #ue indica el inicio! seguido del nombre del procediiento

& de la sentencia End 9ub! #ue arca el fin. a sentencia 9ub tabi(n puede ir precedida de otras expresiones! #ue tienen la funci"n de

deliitar el ábito del procediiento! & de una lista de arguentos! es decir! un conjunto de datos! para #ue el procediiento pueda usarlos

de anera interna.

a sintaxis #ue define a un procediiento es la siguiente:

LPri,ate Public =riendN L9taticN 9ub nobre L*lista de arguentos+N

L>nstruccionesN

LExit 9ubN

L>nstruccionesN

End 9ub

/onde:

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 10/12Microsoft Excel 2013 Professional Página 10 de 12

•  Public: indica #ue el procediiento está disponible para todos los "dulos del pro&ecto. Este dato es opcional.

•  Pri,ate: deterina #ue el procediiento solo puede ser llaado desde otros procediientos #ue est(n en el iso "dulo. Este dato

es opcional.

•  =riend: se eplea -nicaente en un "dulo de clase. Podeos declarar coo =riend a a#uellos procediientos de la clase #ue

#uereos poner a disposici"n de otras clases dentro del iso procediiento. Este dato es opcional.

•  9tatic: indica #ue las ,ariables del procediiento se antendrán entre una llaada & otra. Este dato es opcional.

•  nobre: es el nobre del procediiento 9ub. Este dato es re#uerido.

•  lista de arguentos: es una lista de ,ariables separadas por coas #ue se pasan al procediiento 9ub cuando se lo in,oca. Es opcional.

•  >nstrucciones: es el conjunto de sentencias #ue se ejecutan dentro del procediiento 9ub. Cada instrucci"n se escribe en una lnea

diferente. Este dato es opcional.

• 

Exit 9ub: perite salir de un procediiento. Io es necesario a no ser #ue se necesite retornar a la sentencia situada inediataente acontinuaci"n de la #ue efectu" la llaada antes #ue el procediiento finalice.

•  End 9ub: arca el cierre del procediiento 9ub.

+ec"er!e: En la sintaxis para escribir un procediiento! algunos eleentos están encerrados entre corc%etes *LN+! & algunas palabras están

separadas por una barra ,ertical *+. El corc%ete nos está indicando #ue los eleentos son opcionales! & la barra ,ertical! #ue es posible

seleccionar ás de una palabra.

Por ejeplo! la sintaxis de un procediiento #ue nos perite ingresar el nobre & el apellido en la celda A1 sera la siguiente:

Pri,ate 9ub ejeplo*+

n O >nput)ox*>ngrese su nobreQ+

A O >nput)ox*>ngrese su apellidoQ+

?ange*a1Q+.Value O n R R A

End 9ub

L! rc%6i4i%(#! F/(c#i(Coo sabeos! Microsoft Excel proporciona un gran conjunto de funciones predefinidas o internas! tales coo 9ua! Proedio! Max! Min!

entre otras. Pero! en ocasiones! necesitaos reali'ar cálculos ás coplejos para los cuales no existe una funci"n disponible.

Por edio de los procediientos =unction! podeos crear nue,as funciones apliando! de esta anera! las incorporadas en Excel. A este

tipo de funciones! se las conoce coo funciones definidas por el usuario.

Al igual #ue los procediientos 9ub! un procediiento =unction puede toar arguentos! reali'ar un conjunto de acciones especficas &

cabiar el ,alor de los arguentos. El c"digo de estos procediientos está encerrado entre las sentencias F"nction y &n F"nction.

A diferencia de los procediientos S"b! los procediientos F"nction  pueden de,ol,er un ,alor o resultadoG por esta ra'"n! cuando

declaraos una funci"n! es necesario establecer #u( tipo de ,ariable será el ,alor #ue ,a a de,ol,er el procediiento

Si(#)$i! 6% &! rc%6i4i%(#! F/(c#i(5odo procediiento =unctiondebe coen'ar con la sentencia =unction#ue indica el inicio! seguido del nobre de la funci"n & la sentencia

End =unction! #ue arca el fin.

a sintaxis #ue define a este tipo de procediiento es la siguiente: a sintaxis #ue define a un procediiento es la siguiente:

LPri,ate Public =riendN L9taticN =unction nobre L*lista de arguentos+N L*As tipo+N

L>nstruccionesN

LExit =unctionN

L>nstruccionesN

End =unction

/onde:

•  Public: indica #ue el procediiento =unctionestá disponible para todos los "dulos del pro&ecto. Este dato es opcional.

•  Pri,ate: deterina #ue el procediiento =unction solo puede ser llaado desde otros procediientos #ue est(n en el iso "dulo.

Este dato es opcional.

•  =riend: se eplea solaente en un "dulo de clase. Podeos declarar coo =riend a a#uellos procediientos de la clase #ue #uereos

poner a disposici"n de otras clases dentro del iso procediiento. Este dato es opcional.

•  9tatic: indica #ue las ,ariables del procediiento =unction se antendrán entre una llaada & otra. Este dato es opcional.

•  nobre: es el nobre del procediiento =unction. Este dato es re#uerido.

•  lista de arguentos: es una lista de ,ariables separadas por coas #ue se pasan al procediiento cuando se lo in,oca. Este dato es

opcional.

•  As tipo: deterina el tipo de datos #ue de,uel,e la funci"n. Este dato es opcional.

•  >nstrucciones: es el conjunto de sentencias #ue se ejecutarán dentro del procediiento. Cada instrucci"n se escribe en una lnea

diferente. Este dato es opcional.

•  Exit =unction: perite salir de una funci"n. 9olo se re#uiere si se necesita retornar a la sentencia situada inediataente a continuaci"n

de la #ue efectu" la llaada antes de #ue el procediiento finalice.

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 11/12Microsoft Excel 2013 Professional Página 11 de 12

Por ejeplo! la sintaxis de una funci"n #ue nos perite calcular el área de un %exágono sera la siguiente:

=unction areaS%exagono*ado! Apotea+

P O ado T

A O *P T Apotea+ H 2

areaS%exagono O A

End =unction

L! rc%6i4i%(#! Pr%r#3os procediientos Propert& se eplean para crear & personali'ar las propiedades de los objetos de Microsoft Excel. Este tipo de

procediientos se declaran por defecto coo p-blicos! aun#ue tabi(n es posible declararlos coo pri,ados. Io entrareos en detalles!

&a #ue el tea es u& aplio & no se abordará en esta asignatura.

Tr)*)+)r c( &! rc%6i4i%(#!Coo &a encionaos! podeos crear un procediiento en los objetos o/%s! ThisWorkbook ! M!"losy UserFoms. 9in ebargo! es

con,eniente utili'ar "dulos para organi'ar ejor el c"digo. Por ejeplo! en un "dulo! podraos tener todo el c"digo #ue usaos para

la edici"n de textoG en otro! todo lo relacionado con cálculos de porcentajes! & as sucesi,aente. A continuaci"n! ,ereos c"o podeos

insertar "dulos.

I(!%r#)r 4<6/&!1.

 

Para agregar un "dulo al pro&ecto! dentro del editor de V)A! ,aos al en- Insert%r  & seleccionaos M!"lo.

2.  Al insertar el "dulo! V)A le asigna un nobre por defecto! en este caso M!"lo1! pero podeos odificarlo a tra,(s de la ,entana

Proie!%!es. Para esto! seleccionaos el M!"lo1 en el &'lor%!or !e royectos0 ,aos a la ,entana Proie!%!es! %aceos clic en

%me! & escribios un nobre nue,o.

E&i4i()r /( 4<6/&1.  9i necesitaos eliinar un "dulo del pro&ecto! debeos reali'ar un procediiento u& sencillo. Priero! debeos dirigirnos al

E$&r)6r 6% r3%c#! & teneos #ue seleccionar el "dulo #ue #uereos eliinar.

2.  uego! %aceos un clic con el bot"n derec%o del ouse &! en el en- #ue se abre! seleccionaos 2"it%r &/emlo.... 

3.  A continuaci"n! aparecerá un cuadro de diálogo #ue nos preguntará si deseaos exportar el "dulo antes de eliinarlo. Pulsaos o!

& entonces el "dulo se %abrá eliinado.

Cr%)r rc%6i4i%(#! S/*Para crear un procediiento S"b! podeos %acerlo escribiendo directaente en la ,entana

C"digo. Esto lo trabajaos en la gua de laboratorio 8 en el tea creaci"n de una acro 8 

5abi(n podeos crear un procediiento S"b  utili'ando el cuadro de diálogo  A$re$%r

 roce!imiento  del en-  Insert%r3Proce!imiento (En el cuadro de diálogo Agregar

 procedimiento, especificamos el tipo, ámbito y el nombre del procedimiento). 9e abrirá un

cuadro de diálogo en el cual debeos seleccionar algunas opciones &! luego! presionaos Acet%r . Vereos #ue! en la ,entana de c"digo! aparece lo siguiente:

Public 9ub 9aludo*+

End 9ub

Cr%)r rc%6i4i%(#! F/(c#i(Al igual #ue coo ,ios en los procediientos S"b! los procediientos F"nction  los podeos crear en cual#uier objeto contenedor de

c"digo. 5abi(n es algo u& sencillo de reali'ar! pero para entenderlo de anera clara & aprenderlo bien desde el principio! ,aos a %acerlo

tra,(s de un pe#ueBo ejercicio.

E+%c/#)r /( rc%6i4i%(# 

Podeos ejecutar un procediiento S"b de diferentes anerasG a continuaci"n! ,ereos algunas de ellas.

A  E+%c/#)r /( rc%6i4i%(# 6%!6% #r rc%6i4i%(#Podeos llaar a un procediiento S"b desde otro procediiento escribiendo su nobre dentro del procediiento #ue lo llaa. Por

ejeplo! para llaar al procediiento mi4nombre! escribios el c"digo:

9ub llaaSproc*+

iSnobre

End 9ub

8/17/2019 Material Complementario VBA

http://slidepdf.com/reader/full/material-complementario-vba 12/12Mi f E l 2013 P f i l Pá i 12 d 12

9i dos o ás "dulos contienen un procediiento con el iso nobre! debeos incluir el nobre del "dulo! adeás del nobre del

procediiento. Por ejeplo! supongaos #ue teneos un pro&ecto #ue se llaa Ejeplos2.xlscon tres "dulos: M"dulo1! M"dulo2 &

M"dulo3! & en los M"dulo1 & M"dulo3 teneos dos procediientos llaados encabe'ado. Para llaar al procediiento encabe'ado #ue se

encuentra en el M"dulo3! debereos escribir la siguiente sintaxis:

9ub llaaSproc2*+

M"dulo 3.encabe'ado

End 9ub

5abi(n podeos llaar a un procediiento epleando la cláusula #%ll . Veaos el siguiente ejeplo:

9ub llaaSproc2*+

Call iSnobre

End 9ubAun#ue no debaos pasarle ning-n arguento a un procediiento cuando lo in,ocaos! es aconsejable #ue epleeos la sentencia #%ll .

/e esta fora! podeos identificar de anera rápida las llaadas #ue reali'aos a otros procediientos.

E+%c/#)r /( rc%6i4i%(# 6%!6% %& E6i#r 6% VBAPara ejecutar un procediiento desde el Editor de Visual )asic! debeos ingresar al en- &/ec"t%r   & seleccionar las opciones &/ec"t%r

S"b3UserForm. 5abi(n podeos presionar la tecla = o el bot"n Ejecutar de la barra de %erraientas &st5n!%r . Esta opci"n solo es ,álida

si el procediiento no re#uiere arguentos.

E+%c/#)r /( rc%6i4i%(# 6%!6% &) ,%(#)() 6% E$c%&5abi(n es posible ejecutar un procediiento desde la ,entana de Excel. Para reali'ar esto! debeos ir a la fic%a 6es%rroll%!or  & luego

pulsar el bot"n M%cros. En el cuadro de diálogo #ue se abre a continuaci"n! seleccionaos el procediiento #ue #uereos ejecutar &! para

finali'ar! presionaos el bot"n &/ec"t%r .

E+%c/#)r %& rc%6i4i%(# c( /() #%c&) 6% )cc%! 6ir%c#$tra anera de ejecutar un procediiento es presionar una tecla de acceso directo asignada para este fin. Para esto! lo #ue priero debeos

%acer es configurar #u( tecla es la #ue ,aos a utili'ar. /esde la ,entana de Excel! presionaos el bot"n M%cros #ue se encuentra en la

fic%a 6es%rroll%!or  &! en el cuadro de diálogo #ue se abre! seleccionaos 7ciones8. A continuaci"n! en el cuadro de diálogo denoinado

7ciones !e l% m%cro! teneos #ue %acer un clic en Tecl% !e m9to!o %brei%!o &! luego! escribios una letra en la casi lla #ue se encuentra

a continuaci"n de #T+L :.

E  E+%c/#)r %& rc%6i4i%(# /#i&i?)(6 *+%#!$tra anera de ejecutar un procediiento es asignar la acro a un bot"n de control de forulario o a cual#uier otro objeto! coo pueden

ser las foras! las iágenes & los gráficos #ue se encuentran en la ,entana de Excel. Para asignar un procediiento a un bot"n de forulario!

,aos a la fic%a 6es%rroll%!or ! presionaos Insert%r  &! en el sector Controles de ;orm"l%rio! seleccionaos Botn (control !e ;orm"l%rio).

Coo lo reali'aos en la gua de laboratorio 8.

F  E+%c/#)r "/(ci(%!

A diferencia de los procediientos S"b! los procediientos F"nction se pueden ejecutar solaente de dos aneras:•  /esde otro procediiento 9ub o =unction.

•  /entro de una f"rula en una %oja de cálculo

A.r%.)r c4%(#)ri! )& c<6i.6n coentario es un texto explicati,o precedido por un %stro;o *U+! #ue situaos en el c"digo. Este sbolo le indica a V)A #ue pase por

alto las palabras #ue ,an a continuaci"n de (l. os coentarios son u& -tiles para describir la funcionalidad del c"digo de los procediientos.

Adeás! sir,en para probar & solucionar probleas en los procediientos V)A. Por ejeplo! cuando ejecutaos un procediiento! puede

#ue este no funcione coo esperaos. En lugar de borrar las lneas de c"digo #ue sospec%aos #ue sean las causantes del problea! lo #ue

podeos %acer es coentarlas! de este odo! las oitios oentáneaente & seguios coprobando otras partes del procediiento.