Questo tutorial ti insegnerà come ottenere la lunghezza (dimensione) di un array in VBA.
Ottieni lunghezza array
Per ottenere la lunghezza di un array, è necessario conoscere le posizioni iniziale e finale dell'array. Puoi farlo con le funzioni UBound e LBound di VBA.
Funzioni LBound e UBound
Questa procedura mostra come utilizzare le funzioni UBound e LBound su un array a dimensione singola:
123456 | Sub UBoundLBound()Dim exArr (da 1 a 4) come stringaMsgBox UBound(exArr)MsgBox LBound(exArr)Fine sottotitolo |
Sottraendo i due otterrai la lunghezza dell'array (UBound - LBound +1).
Ottieni la funzione di lunghezza dell'array
Questa funzione calcolerà la dimensione (lunghezza) di un array unidimensionale:
1234567 | Funzione pubblica GetArrLength(a As Variant) As LongSe è vuoto (a) AlloraGetArrLength = 0AltroGetArrLength = UBound(a) - LBound(a) + 1Finisci seFine funzione |
Ottieni dimensioni array 2D
Questa funzione calcolerà il numero di posizioni in una matrice bidimensionale:
12345678910111213141516171819 | Sub testArrySize()Dim arr2D (da 1 a 4, da 1 a 4) quanto più a lungoMsgBox GetArrSize_2D(arr2D)Fine sottotitoloFunzione pubblica GetArrSize_2D(a As Variant) As LongDim x quanto più lungo, y quanto più lungoSe è vuoto (a) AlloraGetArrSize_2D = 0Altrox = UBound(a, 1) - LBound(a, 1) + 1y = UBound(a, 2) - LBound(a, 2) + 1GetArrSize_2D = x * yFinisci seFine funzione |