Este tutorial ensinará como obter o comprimento (tamanho) de um Array em VBA.
Obter comprimento da matriz
Para obter o comprimento de uma matriz, você precisa saber as posições inicial e final da matriz. Você pode fazer isso com as funções UBound e LBound do VBA.
Funções LBound e UBound
Este procedimento demonstra como usar as funções UBound e LBound em uma matriz de dimensão única:
123456 | Sub UBoundLBound ()Dim exArr (1 a 4) como stringMsgBox UBound (exArr)MsgBox LBound (exArr)End Sub |
Subtraindo os dois, você obterá o comprimento da matriz (UBound - LBound +1).
Obter função de comprimento de matriz
Esta função irá calcular o tamanho (comprimento) de um Array unidimensional:
1234567 | Função pública GetArrLength (a As Variant) As LongIf IsEmpty (a) ThenGetArrLength = 0OutroGetArrLength = UBound (a) - LBound (a) + 1Fim seFunção Final |
Obtenha o tamanho do array 2D
Esta função calculará o número de posições em uma matriz bidimensional:
12345678910111213141516171819 | Sub testArrySize ()Dim arr2D (1 a 4, 1 a 4) enquantoMsgBox GetArrSize_2D (arr2D)End SubFunção pública GetArrSize_2D (a As Variant) As LongDim x As Long, y As LongIf IsEmpty (a) ThenGetArrSize_2D = 0Outrox = UBound (a, 1) - LBound (a, 1) + 1y = UBound (a, 2) - LBound (a, 2) + 1GetArrSize_2D = x * yFim seFunção Final |