You are on page 1of 88

Macros desde Cero. Post 1.

Ciencia y Educación | Hace más de 11 meses


3
0
0
Con este manual, aprenderemos a realizar macros en Excel. Lo primero que debemos
saber es, que significa la para macro.
Una macro es una serie de instrucciones que se le dan a un programa, en este caso
Excel, a través de un lenguaje de programación, en este caso, lenguaje Visual Basic,
para que realice una serie de operaciones de forma automática.
Estas macros, pueden ser diseñadas a través de código Visual Basic o bien pueden ser
grabadas a través de la grabadora de macros que contiene la aplicación Excel del
paquete ofimático.
En esta guía nos vamos a centrar en el código visual basic. Por lo tanto vamos a
comenzar creando una carpeta en el escritorio mismamente a la cual llamaremos:
Macros.
Dentro de ella vamos a un archivo de Excel, por lo tanto abrimos nuestra aplicación y
automáticamente, guardaremos el archivo como “Libro de Excel habilitado para
macros”, y le pondremos como nombre Ejemplos. Esto nos creará un archivo con la
extensión “xlsm”, de forma que el archivo quedara nombrado como Ejemplos.xlsm.
Por otro lado, dentro de nuestra carpeta macros, crearemos una nueva carpeta, a la cual
le pondremos nuestro nombre, en este caso, yo le pondré como nombre “tutor”.
Ya tenemos lo básico. Ahora nos iremos al archivo de Excel 2007 que habíamos abierto
y guardado con el nombre de Ejemplos.xlsm.
Nos iremos al botón de office y haremos clic en Opciones de Excel. Nos aparecerá la
siguiente imagen en la que habilitaremos la pestaña programador y aceptaremos.
Una vez que ya tengamos esto preparado en la misma pestaña programador, haremos cic
en Visual Basic y de esta forma, entraremos al editor donde creamos las macros en
Excel.
Antes de nada, crearemos un formulario a través del menú Insertar  Userform y
dibujaremos un CommandButton. Como muestra la siguiente imagen, Nos quedará algo
parecido a esto.
Aquí tenemos un formulario con un botón, el cual tenemos seleccionado, por lo que
podremos ver sus propiedades y cambiarlas a nuestro antojo.
Colocaremos el texto Ejecutar Accion en el Caption de nuestro command Buton.
En nuestro formulario, en su propiedad Name, colocaremos el Nombre Frm_Ejemplos.
Además a través del menú insertar, crearemos un nuevo modulo en el cual
programaremos.
Comenzamos entonces. Este es el módulo que vamos a crear, nos quedaría de la
siguiente manera.
Vamos a maximizarlo para ver bien el código y sus correspondientes explicaciones.
Primero debemos saber lo siguiente, las macros, pueden programarse a nivel del
formulario o bien a nivel de módulo, en un módulo aparte.
Si las macros están programadas a nivel de formulario, entonces las macros serán
privadas por defecto y utilizadas sólo y únicamente por el formulario en el cual son
programadas.
Por el contrario si las macros están programadas a nivel de módulo, en un módulo
aparte, como será nuestro caso y además quieren ser utilizadas en un formulario de la
aplicación, entonces estas macros deben ser programadas como púbicas.
Vamos a verlo con un ejemplo.
En el caso del módulo, si nosotros nos fijamos en la barra azul, barra de título del
modulo vemos lo siguiente

En este primer caso vemos Ejemplos.xlsm - Modulo1 (Código)


Todo lo que programemos aquí no tendrá efecto sobre ningún formulario a no ser que
indiquemos lo contrario, por tanto todo lo que programemos y queramos que sea
utilizado por algún objeto de nuestra aplicación, lo primero que debemos hacer es
declararlo como público.

Ahora si nosotros hacemos clic con el botón derecho en el nombre del formulario y
vemos también la barra de título veremos lo siguiente:
Ejemplos.xlsm – Frm_Ejemplos (Código)

Todo lo que programemos aquí, solo será efectivo para nuestro formulario llamado
Frm_ejemplos.
Más adelante lo veremos con más detalle.
Ahora vamos a comenzar a programar en el módulo 1.
Todos los procedimientos que escribamos serán públicos y comenzarán por “Public
Sub” o simplemente “Sub” y el nombre del procedimiento, y finalizarán con “End Sub”.
Además todas y cada una de las cláusulas que se abran, deberán finalizarse.

Con esto terminamos una muy pequeña introducción a las macros en el Excel. El el
siguiente post veremos ejemplos de macros en el propio Excel con los comentarios
correspondientes para su mejor comprension.

Macros desde cero. Post 2


Ciencia y Educación | Hace más de 11 meses
2

Comenzamos con los ejemplos de nuestras macros en excel. Estos ejemplos nos
serviran para comprender la posterior publicación de la creación de un programa de
gestión en excel.

Ejemplo 1

La forma más típica de declarar variables es la siguiente:

Aunque hablamos de variables "static" estas no se suelen utilizar. En caso de declarar


variables privadas lo haremos con la palabra reservada Dim

Por otro lado en la siguiente imagen veremos como crear nuestra primera macro
publica, la cual llamaremos en las siguientes macros que programemos, justo antes de
empezar a programarlas. Esto nos servira para acelerar la ejecución de cada una de las
macros que vayamos haciendo.
Despues de programar esta macro, crearemos otra identica que llamaremos
Finalizar_Macro y que se diferenciará de la anterior en que tendrá todos los parametros
del objeto application en True para poder mostrar los resultados.

Teniendo en cuenta esto, nuestras dos primeras macros quedarían de la suignete manera.

Para finalizar este post vamos a ver los Msgbox.

Un Msgbox es un cuadro de mensaje que podemos personalizar para mostrarle


información al usuario pulsando un botón. En estos mensaje veremos los literales, es
decir, mostraremos al usuario un mensaje que nosotros escribamos.
Debemos saber que los literales siempre irán entre comillas.
Utilizaremos para ello un modulo nuevo, El modulo2 que crearemos a través de Insertar
modulo.
Ahora nos vamos a nuestro userform que hemos llamado frm_ejemplos y hacemos
doble clic en el boton que tenemos en él.
Nos aparecerá el siguiente codigo:
La imagen resultante seria la siguiente:
Macros desde cero. Post 3.
Ciencia y Educación | Hace más de 11 meses
0

En este post vamos a continuar viendo ejemplos de macros y en este caso veremos lo
que yo llamo, Msgbox variables.
Estos Msgbox, son cuadros de mensaje personalizados al igual que los mencionados en
el post anterior, la unica diferencia con los anteriores es que, si en los anteriores
mostrabamos un mensaje literal escrito por nosotros en este, vamos a sacar por pantalla
un dato contenido o bien en una variable o bien en un cuadro de texto.

Para ello vamos a agregar al formulario frm_ejemplos un textbox, al cual le vamos a


cambiar su propiedad name. Lo llamaremos Txt_Datos.

El formulario nos quedaría de la siguiente manera:


Ahora vamos a ver como mostrar un mensaje con un dato que hayamos escrito en este
textbox llamado txt_datos.

Primero vamos a hacerlo en el propio formulario, hacemos doble click en el botón


Cmb_Ejecutar y borramos lo anterior lo programaremos de la siguiente manera:
En este caso el mensaje como es un dato que tenemos en un textbox irá sin comillas
como podeis ver en la imagen.
El Msgbox sigue manteniendo la misma estructura: Msgbox "mensaje", tipo de
mensaje, "titulo"
Siempre que el mensaje este en un control de formulario o una variable, este irá sin
comillas.

Tambien podemos juntar frases literales con contenido en textbox, combobox,


variables.... Veamos un ejemplo.
Ahora si ejecutamos nuestro formulario y escribimos un dato en el textbox, veremos
que el mensaje será: "Mi nombre es" + el dato que hayamos escrito.
Muy bien amigos, ahora por fin vamos a ver que esto tambien se puede hacer
almacenando el dato en una variable.
En este caso como vamos a utilizar el codigo en el propio formulario, declararemos una
variable privada de tipo String (cadena de texto) a la que le asignaremos un valor.

Las variables tipo string pueden contener datos tanto numéricos, como alfanuméricos.

En este caso no vamos a tener en cuenta el cuadro de texto del formulario.

Veamos un ejemplo.
En este caso declaramos la variable mensaje, la cual estará solo disponible para ese
evento concreto del botón pero no lo estarán para el resto de botones ni de eventos.

Macros desde cero. Post 4.


Ciencia y Educación | Hace más de 11 meses
0
0
0
Vamos a trabajar ahora con variables publicas, String, tipo cadena de texto y veremos
en esta macro como crear un libro nuevo y guardarlo en una carpeta dentro de la
ubicación en donde tenemos guardado el libro activo.

Esta macro la crearemos en un modulo. Recordar que para que funcione debemos llamar
al procedimiento desde el botón desde el cual queremos que ejecute esta acción.
Una vez guardado el libro en la carpeta tutor, el libro quedará abierto.
Para cerrarlo simplemente debemos añadir la siguiente instrucción despues de guardarlo
ActiveWorkbooks.Close

Macros desde cero. Post 5.


Ciencia y Educación | Hace más de 11 meses
0
0

En este post vamos a hablar un momento de las macros en excel. Recordar que las
macros se pueden realizar a traves de VBA como veremos a lo largo del curso o bien
con la grabadora de macros.
En ambos casos, todo se traduce a lenguaje visual basic.
Si os fijais, lo primero que hacemos es guardar el libro habilitado para macros y partir
de ahi comenzamos a grabar o programar nuestras macros.

¿Pero que ocurre cerramos el libro y volvemos a abrirlo?


¡Sorpresa! Mensaje de advertencia... se ha desabilitado parte del contenido.
Esto ocurre porque no tenemos habilitadas las macros y por lo tanto siempre que
abrimos el libro nos aparece esa advertencia.
Si es verdad que hay que tener especial cuidado con lo que se programa, recordar que
muchos virus están programados en este lenguaje, pero en nuestro caso, las macros
vamos a programarlas nosotros, así que, lo que podemos hacer para que no nos moleste
el mensaje cada vez que abrimos el libro es habilitarlas.

Como digo las macros van a estar programadas por nosotros, asi que, no hay peligro de
infecciones ni cosas raras.

Vamos a ver como podemos habilitar las macros.


Lo primero que debemos hacer es abrir un archivo nuevo de excel en blanco. y despues
haremos lo siguente.

Nos iremos al botón de office, y haremos clic en "Opciones de Excel" y a continuación


en Centro de confianza - Configuración del centro de confianza.
Nos aparecerá la siguiente imagen:
Aceptando todos los cuadros de dialogo y cerrando excel, ya tendremos habilitadas las y
podremos abrir el archivo que contenga las macros sin que nos de ningun aviso en ese
sentdo para usarlo al 100%.
Yo por mi parte antes de aceptar, voy a habilitar tambien el ActiveX. justo en la opción
que hay encima de habilitar las macros, y luego aceptamos todo.
Bien una vez aclarado esto, y sabiendo que este paso podemos hacerlo en cualquier
momento, bien sea antes de comenzar nuestros proyectos o por el medio al estar
haciéndolos o bien cuando terminemos el proyecto continuarremos en el siguiente post
con programación en VBA.

Macros desde cero. Post 6.


Ciencia y Educación | Hace más de 11 meses
0

0
Veamos como abrir libros de excel a través de macros comprobando antes si el archivo
existe o no para poder validar posibles errores.
Cuando nosotros realizamos la comprobación de si existe el archivo, si realmente existe
lo va a abrir, nos ha faltado un pequeño detalle, justo antes de realizar la apertura del
libro, agregaremos esta instrucción:

On Error Resume Next

Es decir, si hay errores que continúe.si el archivo ya esta abierto que continue en este
caso.
Nos vemos en el siguiente post
Macros desde cero. Post 7. Creación del
libro clientes.
Ciencia y Educación | Hace más de 11 meses
0
0

Bueno gente empezamos ahora un poco más en serío con las macros en excel creando
un primer libro para ir almacenando los clientes de nuestro negocio.

Primero crearemos una carpeta llamada plantillas y ahi crearemos una plantilla para
almacenar nuestros clientes.
Ahora crearemos en el modulo 2 un procedimiento que creará un libro llamado plantilla
de clientes.xlsx con los respectivos titulos de los campos, y lo guardará en la carpeta
plantillas.
Una vez terminamos de programar el procedimiento, lo llamamos desde el botón que
queramos que ejecute la acción en su evento clic como en la siguiente imagen.
Si ahora nos vamos a la carpeta donde se nos guardo el archivo nuevo de excel y lo
abrimos, veremos algo como esto.
Nos vemos en el siguiente post.

Macros en Excel 2007. Post 8.


Formulario para crear Plantill
Ciencia y Educación | Hace más de 11 meses
0
0
0
En el post anterior hemos visto como crear una plantilla nueva de clientes a partir de
una macro. Pues bien, ya tenemos nuestro procedimiento programado y listo para usar.
Además lo hemos probado en el formulario Frm_Ejemplos para saber que funcionaba.

Ahora lo que vamos a hacer es lo primero de todo modificar el formulario Ejemplo


cambiando las propiedades del commandbutton.
Su Caption será "Crear Plantilla de Clientes", En dos lineas.
Para cambiar de línea dentro del command button, utilizamos la combinación de teclas
Ctrl + Enter.
Por otra parte su propiedad Name, Será Cmb_Crear_Plantilla_Clientes

Por lo que respecta al Frm_Ejemplo, lo seleccionaremos y su Name en lugar de ser


Frm_Ejemplos, será Frm_Crear_Plantillas.

Una vez reformando nuestro formulario y redimensionado, quedará de la siguiente


manera:
Esta imágene mostrará como queda nuestro botón y nuestro formulario..
La letra del caption del botón, así como la letyra del formulario, la hemos cambiado a
una Arial Negra tamaño 11.

Por otro lado el Caption del formulario todavia no lo hemos cambiado. Cuando
terminemos de crear todas las plantillas, entonces lo cambiaremos.

en el siguiente post veremos la programación que debemos incluir en el boton


Cmb_Crear Plantilla_Clientes.
Un slaudo y os espero en el siguiente post.

Macros desde Cero. Post 9. Programando


boton de clientes.
Ciencia y Educación | Hace más de 11 meses
0

En este post os dejaré la programación que utilizaremos para crear nuestrá plantilla de
clientes.
Haciendo clic en el boton cmb_crear_plantilla_clientes, programaremos lo siguiente.
Un saludo y nos vemos en el siguiente.

Macros desde Cero. Post 10. Formulario


de Inventario
Ciencia y Educación | Hace más de 11 meses
1
Para seguir este post, vamos a crear un formulario de introducción de datos.
Llamaremos al nuevo userform en su proiedad Name como Frm_Inventario. y por
otro lado crearemos
- Tres Labels o etiquetas.
- Tres Textbox
- Cuartro Comandbutton.
- El tipo de letra del userform siempre usaremos Arial Black tamaño 11.

Names de los controles:


Txt_Referencia, Txt_Unidades, Txt_Descripcion
Cmb_Dar_de_alta
Cmb_Dar_de_baja
Cmb_Modificar
Cmb_Cancelar

El Txt_Descripcion, tendrá su propiedad Multiline en True.

Veamos como queda el formulario.

Este formulario, actuara en la hoja Inventario del libro de productos, que de


momento como sabeis, está vacia ya que, solo contiene los títulos de los campos.

Insertamos un modulo ahora y trabajamos con el formulario de inventario.


Macros desde Cero. Post 11. Crear
Frm_Clientes
Ciencia y Educación | Hace más de 11 meses
0

En este crearemos la creación del formulario de clientes.


Recordar cambiar el Name de cada uno de los textbox del formulario.

Saludos.

Macros desde cero. Post 12. Validando


textbox de clientes
Ciencia y Educación | Hace más de 11 meses
0
0
0
En este post veremos como validar textbox del formulario de clientes.

Haciendo doble clic en cada textbox, podremos programar su evento chante.

Veamos como realizar este paso.


Macros desde cero. Post 13.
Programando Formulario de Client
Ciencia y Educación | Hace más de 11 meses
0

0
En este post veremos como programar el formulario de clientes. Recordar que cuando
empezamos, al activar el formulario habiamos desactivado todos los textbox excepto el
del NIF y todos los botones excepto el de cancelar.

Por mi parte he añadido un nuevo boton, Cmb_Facturar y un nuevo Textbox, Txt_Fax.


Vamos entonces a ver la progamación del formulario de clientes y en concreto el evento
Keydown del textbox Txt_nif, de forma que, interactuemos con el cuando pulsemos la
tecla intro.
Ahora el proccedimiento de captar los datos de los clientes en variables es el siguiente:
y logicamente estas variables han sido declaradas anteriormente en el modulo variables
donde declaramos todas y cada una de las variables del proyecto.
Recordar que aunque no se vea en la imagen, siempre despues de finalizar la macro,
despues del Call Finalizar_Macros siempre termina el procedimiento con End Sub

Macros desde cero. Post 15. Formulario


de Clientes. Completo
Ciencia y Educación | Hace más de 11 meses
0
0
0
Vamos a ver en este post como nos quedaria la programación del formulario de clientes
con todas las moficicaciones que hemos realizado, por tanto, veremos de nuevo todo el
código decada uno de los eventos susceptibles de cualquier cambio que hayamos
realizado.

Aclaración: Todas las variables se declararán como públicas en un módulo a parte.


Además todos los procedimientos que esten precedidos por la palabra Call serán
tambien declarados en un módulo a parte como públicos. Todo esto lo iremos viendo a
lo largo del post, por lo que recomiendo que antes de comenzar a hacer nada, se lea todo
atentamente para que no haya ningunda duda.

Primero vamos a crear una carpeta llamada Imagenes Clientes dentro del directorio raiz
de nuestra apliacion, es decir en la carpeta donde tenemos el archivo de macros.
Acto seguido veremos como nos queda el formulario de creación de plantillas y nos
centraremos en el botón para crear nuestro libro declientes.

Haciendo doble clic en el boton de crear plantilla de cleintes, nos saltará el evento clic
del botón en cuestión, donde programaremos lo siguiente.
En el evento clic de este botón hay varios llamados a procedimientos programados en
otros modulos y una variable a la que se le asigna una ruta.

Veamos primero los procedimientos Comenzar_Macros y Finalizar_Macros, declarados


en el Modulo Macros_Comunes.
Estos dos procedimientos serán llamados siempre que se empece a programar un
procedimeinto o se finalice la programación del mismo.
Veamos estos dos procedimientos.

Ahora vamos a ver la programación del procedimiento que utilizamos para crear el libro
que vamos a llamar Plantilla de Clientes.xlsx
Bueno chicos ya estamos casi casi acabando, vamos ahora a ver como nos queda el
formulario de clientes que vamos a utilizar para introducir los datos en la plantilla
creada anteriormente.
Describamos un poco estos textbox:
Todos ellos excepto el correo electrónico, admitiran solo mayúsculas y por otro lado
describamoslos según sus nombres:

Txt_Nif: Texto.
Txt_Nombre: Texto
Txt_Direccion: Texto
Txt_cp: Este solo admite números será el código postal
Txt_poblacion: Texto
txt_provincia: Texto
txt_email: Texto solo minusculas
Txt_telefono: Solo admite números.
Txt_Fax: Solo admite números.
Txt_Observaciones: Textbox sin restricción podemos escribir cualquier valor y además
puede ser en mayusculas o minúsculas. Este textbox Tiene la propiedad Multiline en
True.

Por lo que respecta a los botones: Tipo de Letra Arial tamaño 11


Cmb_Dar_de_alta: Para registrar nuevos clientes.
Cmb_Dar_de_baja: Para eliminar clientes.
Cmb_Modificar: Nos permite modificar los datos de un cliente.
Cmb_Facturar: Nos permitirá crear facturas, albaranes y presupuestos para un cliente.
Este botón lo programaremos más adelante. Por el momento vamos a dejarlo de lado.
Cmb_Guardar: Nos permitira guardar los cambios generados en los datos de un cliente,
es decir, guardará los cambios en los datos de un cliente una vez modificados.
Cmb_Cancelar: Cierra el formulario.
Img_Cliente: Mostrará la foto del cliente cuando lo busquemos.
Su propiedad PictureSizeMode la dejaremos en FrmPictureSizeModeStrech para que
muestre la imagen completa.

Vamos a Ver ahora las variables y procedimientos que se van a utilizar en nuestro
formulario.

Vamos ahora con los procedimientos que llamaremos desde el codigo de nuestro
formulario cuando sea necesario:
Muy bien, en esta ultima imagen vemos un procedimiento que vacia todas las variables
excepto la del Codigo_postal que toma el valor cero ya que está es un variable numérica
y no puede tomar el valor de cadena vacia.

Bien si hemos llegado hasta aquí, tendremos un formulario con todos lostexbox
desactivamos excepto el textbox del NIF y con todos los botones desactivados excepto
el de cancelar.

Con esto, haremos lo siguiente, cuando nostros introduzcamos un valor en el txt_nif, y


pulsemos intro, buscará el dato en la plantilla de clientes y hara lo que corresponda.

Veamos el codigo del Txt_Nif en su evento Keydown:

Justo despues del loop y a continuación de pasar los datos de las celdas a los botones y
justo antes de activar los botones, vamos a llamar al procedimiento para cargar la foto
de nuestro cliente. Eso lo haremos de esta manera:
Call Cargar_Imagen_Clientes. Este procedimiento no aparece en la siguiente imagen
Bien, veamos ahora la programación de los eventos change de cada uno de los textbox
de nuestro formulario de clientes y el evento Activate del formulario.
Bien ahora ya estamos acabando. Vamos a ver por fín la programación de cada uno de
los botones de dar de alta, dar de baja, modificar, guardar y cancelar.
Recordar que el botón de facturar, vamos a programarlo más adelante.

Comenzamos:

Botón para dar de alta:


Botón para dar de baja:
Botón modificar:

Botón guardar:
Boton Cancelar:

Y ahora vamos a hacer unos pequeños ajustes en nuestra programación.


Vamos a crear en el modulo Macros_Clientes un nuevo procedimiento que será el
siguiente:

En el evento keydown del Txt_Nif, nos vamos a ir a la parte donde hemos programado
entre el Do y el Loop y vamos a modificarlo justo donde se encuentra el msgbox de la
pregunta de si queremos agregar un cliente ahora y dejamos la programación tal cual
está la parte azul.

En este mismo evento, nos situaremos justo despues del end select, y añadiremos las
lineas que se encuentran coloreadas de azul.
Esta ultima imagen con ese elseif, consegimos que, si nosotros pulsamos escape y la
tecla de retroceso, la de borrado, se borra el nif completo de forma que así se restablece
el formulario al estado inicial.

Por otro lado vamos a cambiar la ceda en la que finalizar la busqueda.

Para ello en el mismo evento keydown del Txt_Nif, cuando abrimos el archivo y
activamos la hoja de listado de clientes, vamos a añadir una linea en la que asignamos a
la variable Ultimo_Dato el número de la ultima fila que contiene datos, es decir el
número de la ultima fila que esta ocupada. Añadiremos la linea que esta marcada en
azul.
Muy bien una vez hecho esto, bajamos un poco y volvemos a la programación que
tenemos entre el Do y el Loop.

Aquí vamos a cambiar la condicional, en lugar de decirle que si encuentra una fila
vacia, pregunte si queremos agregar un cliente, vamos a decirle...

Si el número de la fila de la celda activa es un el numero de la ultima fila que contiene


datos +1 entonces que pregunte. Por ejemplo, si tenemos clientes hasta la fila 50, la
condicional seria...
Si el numero de la fila es la 51 entonces pregunta si queremos agregar un cliente.

Esto lo hacemos porque nostros vamos a buscar en toda la lista y quiza puede llegar un
momento que por algun motivo, haya filas vacias por el medio de la lista por lo que
entonces no buscaria en toda la lista, solo buscaria hasta que encuentra una fila vacia.

Vamos a ver entonces como quedaría esa linea del If, la cual esta remarcada en azul.
Bien amigos, con estas modificaciones, hemos finalizardo nuestro formulario de
clientes.

Nos falta como podeis comprobar el Boton de facturar, el cual programaremos más
adelante.
Por el momento, nos veremos entonces en el siguiente post.

P.D. Adelantaros que se está preparando una guía totalmente completa y en español
donde podreis leer con más detalle y mas profundamente todo lo que estamos
publicando en estos post de manera general.

Además también se publicará el curso en videos explicativos de de un maximo de


duración de 60 minutos cada uno.

Nos vemos en el siguiente post.

2. Programación en Excel VBA.


Estructuras condicionales.
Apuntes y Monografías | Hace más de 8 meses
1
En este segundo post, aprovecharemos la ocasión para ver las estructuras condicionales
en visual basic apra aplicaciones.
En este caso y aprovechando la ocasión, veremos dos tipo de estructuras.

- La estructura If.... Else.... End if


- La estructura Select Case......Case Else.... End Select.

Con la primera estructura, evaluaremos una condición dada. If.. Else..... End If

Lo primero que debemos de tener en cuenta es que todas las estructuras que se abren,
deben ser cerradas, esto quiere decir que si comenzamos a evaluar algo comenzaremos
con If o con Select Case y entonces una vez evaluadas las condiciones, el if o select case
que estamos utilizando, debe ser cerrado con End If o con End Select, dependiendo del
caso.

En la primera estructura, If... Else.... End If evaluaremos por lo general una


condición de la siguiente manera:

if ..................lo que sea.................. then 'Si se cumple una condicion, entonces......

- Haremos unas operaciones.

Else 'En caso contrario, es decir, si esa condición no se cumple, entonces.....

- Haremos otras cosas diferentes.

End If 'Cerramos la condicional.

En la segunda estructura Select Case, lo que hacemos es evaluar los valores o lo que
puede suceder con un control u objeto determinado

Seria como lo siguente:

Select Case Caso del Objeto

Case ......
- Hacemos unas cosas
Case......
- Hacemos Otras cosas
Case........
- Hacemos otras cosas diferentes
Case Else ..... En caso que no se cumpla ninguno de los anteriores....
- Si no se cumplen los casos hacemos lo que queramos
End Select Cerramos la escructura.

Veamos algunos ejemplos:

2. Programación en Excel VBA.


Estructuras condicionales.
Apuntes y Monografías | Hace más de 8 meses
1

En este segundo post, aprovecharemos la ocasión para ver las estructuras condicionales
en visual basic apra aplicaciones.
En este caso y aprovechando la ocasión, veremos dos tipo de estructuras.

- La estructura If.... Else.... End if


- La estructura Select Case......Case Else.... End Select.
Con la primera estructura, evaluaremos una condición dada. If.. Else..... End If

Lo primero que debemos de tener en cuenta es que todas las estructuras que se abren,
deben ser cerradas, esto quiere decir que si comenzamos a evaluar algo comenzaremos
con If o con Select Case y entonces una vez evaluadas las condiciones, el if o select case
que estamos utilizando, debe ser cerrado con End If o con End Select, dependiendo del
caso.

En la primera estructura, If... Else.... End If evaluaremos por lo general una


condición de la siguiente manera:

if ..................lo que sea.................. then 'Si se cumple una condicion, entonces......

- Haremos unas operaciones.

Else 'En caso contrario, es decir, si esa condición no se cumple, entonces.....

- Haremos otras cosas diferentes.

End If 'Cerramos la condicional.

En la segunda estructura Select Case, lo que hacemos es evaluar los valores o lo que
puede suceder con un control u objeto determinado

Seria como lo siguente:

Select Case Caso del Objeto

Case ......
- Hacemos unas cosas
Case......
- Hacemos Otras cosas
Case........
- Hacemos otras cosas diferentes
Case Else ..... En caso que no se cumpla ninguno de los anteriores....
- Si no se cumplen los casos hacemos lo que queramos
End Select Cerramos la escructura.
Veamos algunos ejemplos:

Macros desde cero. Excel 2007. Post 9


Plantilla de productos
Ciencia y Educación | Hace más de 11 meses
0

Muy bien, una vez tenemos ya creado el boton para crear la plantilla de clientes.
Nos iremos al formulario y seleccionaremos el botón.
Lo copiamos y lo pegamos. Una vez hecho esto, le cambiaremos el Caption y el
Name.
Acto seguido en el modulo donde habiamos creado el procedimiento para crear los
clientes,, justo debajo del End Sub, crearemos un nuevo procedimiento para crear
la plantilla de productos.
Veamos como quedaria

y Asi quedaría nuestro botón Cmb_Crear_Plantilla_Productos

3. Programación en Excel. VBA. Tipos


de mensages MsgBox.
Apuntes y Monografías | Hace más de 8 meses
0

0
En este tercer post veremos los tipos de msgbox que podemos introducir en nuestra
programación a la hora de que el usuario que utiliza nuestra aplicación reciba un
mensaje.

Mensajes de Información: Son aquellos que muestran información sobre alguna cosa.
Se caracterizan por tener: Un título, un mensaje y un botón para cerrar el mensaje,
generalmente "Aceptar" o "OK". Su tipo de mensaje será vbInformation

Mensajes críticos o de error: Tienen las mismas caracteristicas que los anteriores y suele
utilizarse para mostrar mensajes de error al usuario. Su tipo de mensaje será vbCritical.

Mensaje de realización de preguntas: Son mensaje que se muestran al usuario para


realizar algún tipo de pregunta. Sus caracteriza por tener, un mensaje, un titulo, y dos
botones de respuesta y siempre irán entre paréntesis. Su estructura será: Msgbox
Mensaje, vbquestion + botones, Titulo.
Estos mensajes pueden construirse de dos formas. Almacenando la respuesta según una
variable o bien en el propio mensaje: Por ejemplo:

- Respuesta=Msgbox ("Mensaje", vbQuestion+botones, Titulo)


- Msgbox "Mensaje",vbQuestion+botones, Titulo)=boton de respuesta

Mensajes de Exclamación: Estos mensajes se caracterizan por advertir al usuario de


alguna cosa que puede suceder. Su estructura es: Msgbox "Mensaje", vbExclamation,
"Titulo"

Tanto los mensajes criticos, de información o de exclamación pueden ser mensajes de


progunta si cambiamos su palabra clave vbInformation, vbCritical, vbExclamation o
vbQuestion.

Veamos algunos ejemplos:

You might also like