sábado, 17 de mayo de 2008

Arrays

Arrays Dinámicos

Lo emplearemos Cuando el numero de elementos para una dimensión del array no sean las mismas.

Dim ArrayDinamic() 'dejamos vacios los parentesis


Sub recontar_items


ReDim Array(a) 'para asignar el espacio al array


Array(a) =34 *pero ojo que los valores no se mantendran


'si deseamos conservar los valores emplaremos

redim preserve nombrearray(numero)=valor

Redim preserve Array(a)=34 'conservamos los valores


End sub

La sentencia ReDim permite cambiar el número de elementos del array, no el número de dimensiones.

Por ejemplo, si declaramos el array_A a nivel de un módulo.


Private Array_A() as Integer

Para asignarle espacio al array utilizamos:

ReDim Array_A(5)

Cada vez que se ejecuta la sentencia ReDim, todos los valores almacenados en el array se pierden. Cuando le interese cambiar el tamaño del array conservando los valores del array,

use ReDim con la palabra clave Preserve.

Por ejemplo

ReDim Preserve Array_A(8)

Arrays

Ejemplo Array multidimensional

2 dimensiones

ReDim Arrjugadores(0 to 1, 0 to 11) As String

'Mejores futobolistas Europa

Arrjugadores(0, 0) = "Zinedine Zidane "
Arrjugadores(0, 1) = "Henry"
Arrjugadores(0, 2) = "Owen"
Arrjugadores(0, 3) = "Raul"
Arrjugadores(0, 4) = "Ruud van Nistelrooy"
Arrjugadores(0, 5) = "Shevchenko"
Arrjugadores(0, 6) = "Lilian Thuram"
Arrjugadores(0, 7) = "Nesta"
Arrjugadores(0, 8) = "Davor Zucker"
Arrjugadores(0, 9) = "Bergkamp"
Arrjugadores(0, 10) = "Figo"
Arrjugadores(0, 11) = "Cristiano Ronaldo"




'Mejores futobolistas America

Arrjugadores(1, 0) = "Ronaldo"
Arrjugadores(1, 1) = "Batistuta"
Arrjugadores(1, 2) = "Enzo Franchescoli"
Arrjugadores(1, 3) = "Romario"
Arrjugadores(1, 4) = "Ortega"
Arrjugadores(1, 5) = "Ronaldinho"
Arrjugadores(1, 6) = "Roberto carlos"
Arrjugadores(1, 7) = "Emerson"
Arrjugadores(1, 8) = "KaKa"
Arrjugadores(1, 9) = "Rivaldo"
Arrjugadores(1, 10) = "Adriano"
Arrjugadores(1, 11) = "Gamarra"


*Para borrar los elementos del array

erase Arrjugadores

domingo, 11 de mayo de 2008

Arrays

Arrays
Mediante un array podemos refererirnos a una "serie de elementos" por un "mismo nombre" y referenciara un elemento de la serie por un numero de indice.

ArraySuperClubes(1)="Real Madrid"
ArraySuperClubes(2)="Barcelona"
ArraySuperClubes(3)="Milan"
ArraySuperClubes(4)="Inter de Milan"
ArraySuperClubes(5)="Manchester United"

En este ejemplo lo comprobaremos con mayor claridad

1) Nos referimos a una serie de elementos por un mismo nombre en este caso sera ArraySuperClubes.

Por ejemplo bastaria algo como la sgte instruccion para cargar los elementos de nuestro array en un control listbox1

ArraySuperClubes representa a los 5 elementos de nuestro array

listbox1.list=ArraySuperClubes

2) Referenciamos a un elemento de la serie por un numero de indice.

Por ejemplo

Si quisieramos referenciar al elemento "3" de nuestro ArraySuperClubes()

Msgbox ArraySuperClubes(3)

nota:Al igual que con la declaración de variables debemos tener en cuenta

Arrays de variables (estático)
Significa que nuestro array tendra un numero fijo de elementos

Aqui es importante tener en cuenta el ambito de declaración del array tal y como
se hace con las variables de manera cotidiana.

-Es decir a nivel de procedimiento , modulo o pubico (disponible para todo el proyecto)

Ejemplos:

Dim Array_Spain(20) as string

'se declaro un array de 21 elementos que van desde el indice cero..

Array_Spain(0),
Array_Spain(1),
Array_Spain(21)

Dim ArrayBidimensionalXy(1 to 4,1 to 4)as integer

'se declaro array de 2 dimensiones

ArrayBidimensional, con 4*4 elementos ArrayBidimensional(1,1)...ArrayBidimensional(4,4)

Public New_X(1 To 20) As String *20

Public New_X(1)...Public New_X(20),
cada elemento permite almacenar una cadena de (20 caracteres).