Aprende VBA para Access

Uso de bucles For Next en VBA

¡Prueba gratis durante 10 días

nuestros 1218 cursos !

Prueba gratis Mostrar modalidades de suscripción
El bucle For hace que un código se repita un número determinado de veces según las condiciones que le indiquemos, lo que hace que este bucle sea el ideal para realizar cálculos matemáticos. Veamos cómo funciona en este vídeo.

Transcripción

Vamos a ver ahora los bucles "For Next". Los bucles "For Next" se usan para llevar condiciones matemáticas. O sea, que se repita el código que va entremedias un número determinado de veces. Para verlos mejor, lo que vamos a ver es un ejemplo en el cual nosotros vamos a introducir un número aquí en el campo "num". Pincharemos en el botón de "Calcular factorial" que es este botón que se llama "btnFactorial" y nos pondrá el factorial en este otro campo, en el "Facto". Entonces, seleccionamos el botón. y le vamos a decir "Al hacer clic", pinchamos en los puntos suspensivos para ver el código. El factorial es el multiplicar ese número por todos los anteriores hasta que llegue a 1. O sea, por ejemplo, cinco. Es 5 por 4, por 3, por 2 y por 1. Entonces, vamos a ver el código en el cual, declaro primero dos variables. Declaro, por ejemplo, la variable "i" como "Integer" y la variable "acu" como "Double". ¿Por qué como "Double"? Porque lo que vamos a hacer es ir guardando en la variable "acu" la multiplicación de ese valor por los anteriores. Entonces se va a hacer muy grande ese número en cuanto pongamos cualquier valor. Por eso la he definido como "Double". Para empezar le pongo "acu = 1". "Acu" para mi es la abreviatura de acumulador. Cada uno le puede poner el nombre que quiera. Le digo: si num = 0, o sea, si se introduce el número 0 directamente quiero que el campo "facto" sea igual a 1 y quiero que se salga de este procedimiento para ello utilizo "Exit Sub" Pero si no es 0, vamos a ver ahora el bucle "For". Nosotros le decimos desde que "i" es igual a 0 hasta que llega al número introducido, en principio va a ir aumentando de uno en uno pero nosotros, si queremos que fuera hacia atrás, o sea, restando o que fuera aumentando de dos en dos, siempre le podemos poner "step", o sea, que vaya paso a paso. Le podemos decir que sea paso 2, lo cual iría de dos en dos o "step -1", con lo cual, lo que haría es ir restando 1. En este caso, si no le ponemos nada, va a ir aumentado de 1 en 1. Y aquí le ponemos: i = 1. ¿Y qué hacemos? Que multiplicamos "acu" por "i", con lo cual, será 1 por 1, 1. Sube otra vez. Y automáticamente el valor de "i" aumenta y será igual a dos. Dos por 1, 2 y sube otra vez. Así 3x2, 6. Sube. 6x4, 24. Sube. 5x24, 120, por ejemplo. El factorial de 5 es 120. Ya saldría y me colocaría este valor "acu" en el campo que yo quiero. De esta manera, debemos de tener cuidado en no poner un número muy grande y se desborde la variable "acu". Ya que aunque sea "Double" se puede desbordar. Vamos a probarlo. Entonces lo minimizo. Voy al formulario, y aquí voy a poner, por ejemplo, habíamos dicho el número 5. Le digo calcular factorial y efectivamente me pone 120. Podemos probar con cualquier número siempre y cuando no lo hagamos muy grande porque, si ponemos 10, mirar como va creciendo ese número.

Aprende VBA para Access

Aprende las bases de la programación Visual Basic necesarias para aplicarla en Access y poder crear bases de datos más funcionales de las que el software te ofrece por defecto.

2:07 horas (34 Videos)
Actualmente no hay comentarios.
 

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.