Função Excel VBA LBound
LBound em VBA significa “Lower Bound”, ou seja, ele extrairá o menor número de um array. Por exemplo, se a matriz diz “Dim ArrayCount (2 a 10) as String”, então usando a função LBound podemos encontrar o menor número do comprimento da matriz, ou seja, 2.
Abaixo está a sintaxe da função LBound. É muito simples e fácil, possui apenas dois parâmetros.
Lbound (nome da matriz [, dimensão])
- Nome da matriz: este é o primeiro argumento. Para este parâmetro, precisamos especificar o nome do array que é usado para definir o array.
- [Dimensão]: Se a matriz for uma dimensão única, isso não é necessário, por padrão, leva uma ou então precisamos fornecer o número da dimensão.
Então, usando essas funções, podemos encontrar o comprimento mínimo de um array.
Como usar a função VBA LBound? (Exemplo)
Você pode baixar este modelo VBA LBound Excel aqui - Modelo VBA LBound ExcelExemplo 1
Para obter um exemplo, veja o código abaixo.
Código:
Sub LBound_Example1 () Dim Count (2 a 5) As Integer MsgBox LBound (Count) End Sub
No código acima, definimos o array como inteiro e o tamanho do array como 2 a 5. Em seguida, atribuímos a caixa de mensagem VBA para mostrar o menor comprimento do array usando a função LBound.
Quando executarmos o código, obteremos o resultado abaixo em uma caixa de mensagem.
Resultado:
Como nosso array começa em 2, a função LBound determina o menor comprimento do array como 2.
Exemplo # 2
Agora, olhe para o código abaixo.
Código:
Sub LBound_Example2 () Dim Count (5) As Integer MsgBox LBound (Count) End Sub
Acima, não decidimos o limite inferior, em vez disso, apenas fornecemos o comprimento do array como 5, agora vamos executar o código e ver o comprimento mais baixo do valor.
Resultado:
Ele retornou o resultado como 0 porque quando não decidimos o ponto inicial e final de uma matriz, em vez disso, fornecemos o número estático, por exemplo, “Contagem (5) ou seja, neste caso, o valor da matriz começa em 0 e não em 1. Portanto, pode armazenar até 6 valores nele agora.
Contagem (0), Contagem (1), Contagem (2), Contagem (3), Contagem (4), Contagem (5).
Exemplo # 3
Agora vamos usar o intervalo de dados e decidir o limite inferior do intervalo de dados. Para obter um exemplo, veja a imagem de dados abaixo.
A partir deste intervalo, decidiremos o tamanho de linha mais baixo e mais alto.
Primeiro, defina a variável como uma variante.
Código:
Sub LBound_Example3 () Dim Rng As Variant End Sub
Para esta variável variante “Rng”, defina o valor de referência do intervalo como “Intervalo (“ B2: B5 ”). Valor”.
Código:
Sub LBound_Example3 () Dim Rng As Variant Rng = Range ("B2: B5"). Valor End Sub
Para este intervalo, encontraremos o menor e o maior comprimento de array. Abra a caixa de mensagem e a função LBound e forneça o nome da variável.
Código:
Sub LBound_Example3 () Dim Rng As Variant Rng = Range ("B2: B5"). Valor MsgBox LBound (Rng) End Sub
Agora execute o código VBA e veja o menor valor do comprimento.
Resultado:
Agora mude a referência da variável de B2: B5 para A2: B5.
Para este intervalo, encontraremos os valores dos limites inferior e superior.
Código:
Sub LBound_Example3 () Dim Rng As Variant Rng = Range ("A2: B5"). Valor End Sub
Como temos mais de uma matriz de dimensão, precisamos fornecer o número da dimensão também.
Código:
Sub LBound_Example3 () Dim Rng As Variant Rng = Range ("A2: B5"). Valor MsgBox LBound (Rng, 1) End Sub
Para encontrar a primeira coluna, o primeiro limite inferior acima do código ajudará, da mesma forma, encontrar o limite superior nesta primeira coluna abaixo do código ajudará.
Código:
Sub LBound_Example3 () Dim Rng As Variant Rng = Range ("A2: B5"). Valor MsgBox LBound (Rng, 1) & vbNewLine & UBound (Rng, 1) End Sub
Isso encontrará o comprimento inferior e o comprimento superior da primeira coluna. Da mesma forma, na próxima linha, escreva mais uma caixa de mensagem, mas desta vez altere a dimensão de 1 para 2.
Código:
Sub LBound_Example3 () Dim Rng As Variant Rng = Range ("A2: B5"). Valor MsgBox LBound (Rng, 1) & vbNewLine & UBound (Rng, 1) MsgBox LBound (Rng, 2) & vbNewLine & UBound (Rng, 2) End Sub
Execute o código e veja o resultado na caixa de mensagem.
Resultado:
For the first dimension lower bound is 1 and the upper bound is 4.
Click on “Ok” to get the next dimension limits.
Output:
For the second dimension lower limit is 1 and the upper limit is 2.
Things to Remember here
- LBound function returns the minimum length from the array.
- When the array length static i.e. single number then array always starts from the number 0 not from 1.
- In the case of a multi-dimensional array, we need to specify the dimension number.