lettura facile

La funzione UBound() in una macro Excel

La funzione UBound() restituisce il limite superiore di un array in una macro Excel

Ubound(array, [dimensione])

Questa funzione ha due parametri.

  • Il primo parametro è l'array in questione
  • Il secondo parametro è la dimensione. E' facoltativo e di default è la prima dimensione.

Ti faccio un esempio pratico.

  1. Sub Prova()
  2. Dim myArray(10) As Integer
  3. Dim i As Integer
  4. For i = LBound(myArray) To UBound(myArray)
  5. myArray(i) = i
  6. Next i
  7. End Sub

L'array si chiama "myArray" ed è composto da 10 elementi di tipo Integer.

Il ciclo For i = LBound(myArray) To UBound(myArray) legge ogni elemento dell'array dal primo all'ultimo in modo iterativo.

In questo caso la funzione UBound(myArray) restituisce zero 10. E' il limite superiore dell'array.

Nota. La funzione LBound(myArray) restituisce, invece, il limite inferiore ossia zero.

Ecco un altro esempio.

Dichiara questo array multidimensionale

Dim myArray(3 To 5, 2 To 3) As Integer

Si tratta di una matrice, quindi le dimensioni dell'array sono due (larghezza e lunghezza)

  • La prima dimensione dell'array va da 3 a 5.
  • La seconda dimensione dell'array va da 2 a 3.

La funzione UBound(myArray,1) restituisce il limite superiore della prima dimensione dell'array.

UBound(myArray,1)

Il limite superiore della prima dimensione dell'array è 5

5

La funzione UBound(myArray,2) restituisce invece il limite superiore della seconda dimensione.

UBound(myArray,2)

Il limite superiore della seconda dimensione dell'array è 3

3

In questo modo puoi accedere ai singoli elementi di qualsiasi array multidimensionale in modo iterativo, senza indicare con precisione il limite inferiore e superiore dell'array.




Se qualcosa non ti è chiaro, scrivi la tua domanda nei commenti.




FacebookTwitterLinkedinLinkedin