La iteración For ..Next es una instrucción en la que podemos ejecutar un bucle un determinado número de veces conociéndolo previamente.
La sintaxis de la sentencia For..Next
For contador= empezar to finalizar [step incremento (Opcional)]
instrucción 1
instrucción 2
......
instrucción n
next (contador)
Presentaremos a continuación un ejemplo de como calcular el promedio de ventas mensuales .
Datos:
Columna B
Desde la Fila 02 a la 13
Enero: $ 30 000
Febrero:$ 30 000
Marzo:$ 30 00
Abril:$ 25 000
Mayo:$ 20 000
Junio:$ 15 000
Julio:$ 10 000
Agosto:$ 8 000
Septiembre:$ 13 000
Octubre:$ 19 000
Noviembre:$ 24 000
Diciembre:$ 28 000
Ahora debemos de entrar a la pestaña del programador y darle clic a la opción Visual Basic para poder programar las instrucciones.
A continuación se presenta las instrucciones para calcular el promedio de ventas y muestre el resultado en un mensaje
Sub calcularpromedio()
Dim suma_ventas As Long
Dim ventas As Integer
Dim fila As Integer
Dim fin As Byte
Dim num_meses As Byte
Dim inicio As Byte
Dim calcularpromedio As Single
inicio = 2
num_meses = 12
suma_ventas = 0
fin = inicio + num_meses - 1
For fila = inicio To fin
ventas = Range("B" & fila)
suma_ventas = suma_ventas + ventas
Next
calcularpromedio = Round(suma_ventas / num_meses, 0)
MsgBox calcularpromedio
End Sub
Por ultimo dejo el Excel donde esta desarrollado el ejemplo
Ejemplo Promedio de ventas (VBA)
Elaborado por: Daniel Cazorla
17/02/2013 a las 12:46 pm
El uso de For para hallar el promedio de ventas me parecio muy interesante.
Otra forma de presentar el promedio es colocando el resultado en una celda, la macro para esto es:
...
calcularpromedio = Round(suma_ventas / num_meses, 0)
ActiveSheet.Range("G1").Value = calcularpromedio
End Sub
Esto quiere decir que la respuesta (calcularpromedio) se colocara en la celda G1.
Espero que les ayude.
Saludos.
17/02/2013 a las 5:31 pm
Consulta: como aplicarian este codigo para el caso que quisieramos eliminar picos y valles de venta. Muchas veces queremos tener una data los mas cercano a la realidad y tener un promedio de ventas regulares. Por ejm en este caso podria ser que en el mes de agosto hubo quiebre de mercaderia o problemas con el proveedor de modo que las.ventas se vieron afectadas directamente.
Muchas gracias
17/02/2013 a las 6:20 pm
Se me ocurre que podriamos hacer que antes de hallar el promedio de vwntas, apareca un mensaje que te pregunte si quieres obtener el promedio de venta cobsiderando o no considerando picos/valles de venta.
19/10/2021 a las 2:05 pm
Hola, no se si todavía funcione este foro, quería saber si me pueden ayudar. Necesito hacer una macro que me calcule el promedio trimestral de varios años. Las fechas las tengo en columnas.