Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Declarar arreglos en VBA

Declarar arreglos en VBA (ejemplo)

| 1 Comment

Una arreglo en VBA es un conjunto de valores que están lógicamente relacionados unos con otros, mediante su uso se puede hacer referencia a estos valores relacionados con el mismo nombre, y el uso de un número que se llama un índice o subíndice para distinguirlos. Los valores individuales son llamados los elementos del arreglo.

En el siguiente ejemplo supongamos que una empresa comercial llamada Tiendas Smith desea tener un sistema que le permita seleccionar aleatoriamente cuál de sus doce tiendas ubicadas a nivel nacional será la siguiente en ser auditada. Para ello desarrolla los siguiente comandos:

Sub muestra_nueva()
Dim i As Long
Dim Tienda(12) As Single, Tienda2(12) As String
Dim texto As String

Tienda2(1) = “Barranco”
Tienda2(2) = “Cercado”
Tienda2(3) = “La Molina”
Tienda2(4) = “Los Olivos”
Tienda2(5) = “Miraflores”
Tienda2(6) = “Pueblo Libre”
Tienda2(7) = “San Isidro”
Tienda2(8) = “San Miguel”
Tienda2(9) = “Trujillo”
Tienda2(10) = “Chiclayo”
Tienda2(11) = “Piura”
Tienda2(12) = “Arequipa”

For i = 1 To UBound(Tienda)
Tienda(i) = Rnd
Cells(i, 2) = Tienda(i)
Next i

Call doble_orden(Tienda, Tienda2)
texto = “”
For i = 1 To 1
texto = texto & Tienda2(i) & vbCrLf
Cells(i, 1) = Tienda2(i)
Next i

MsgBox texto

End Sub

Sub doble_orden(x() As Single, y() As String)
Dim xTemp As Double
Dim yTemp As String
Dim i As Long
Dim j As Long

For j = 2 To UBound(x)
xTemp = x(j)
yTemp = y(j)
For i = j – 1 To 1 Step -1
If (x(i) <= xTemp) Then GoTo 10
x(i + 1) = x(i)
y(i + 1) = y(i)
Next i
i = 0
10 x(i + 1) = xTemp
y(i + 1) = yTemp
Next j

End Sub

Como se puede apreciar, en la primera macro llamada muestra_nueva se llama a una macro denominada doble_orden que a través de un conjunto de reglas va generando ordenaciones aleatorias. En la primera macro se aplica este orden aleatorio a las doce tiendas.

Asimismo, se ha agregado un botón de comando vinculado para ejecutar la macro muestra_nueva. De esta forma se puede ir seleccionando aleatoriamente la tienda que será auditada por el equipo de control de gestión de Tiendas Smith.

grafo_fin

(Para mayor visualización de la imagen, hacer click en la misma)

Se adjunta el archivo del presente ejemplo:

AUDITORIA_TIENDAS_SMITH

 

Autor: Luis Tarazona Ramos

 

 

One Comment

  1. Esta opcion permite organizar y obtener la informacion de manera sectorizada y precisa.

Deja un comentario

Required fields are marked *.


Excel Avanzado located at , Lima, Perú . Reviewed by usuarios rated: 4.7 / 5