VBA ArrayList (exemplos) - Como criar ArrayList no Excel VBA?

Em vba, construímos coleções de tipos de dados, variáveis ​​de funções e outras declarações importantes, mas semelhante a isso, temos uma lista de matrizes em VBA na qual um usuário pode modificar e colocar suas próprias coleções de variáveis ​​e funções definidas pelo usuário em uma matriz. palavras-chave para a lista de array para projetá-lo.

Excel VBA ArrayList

VBA ArrayList é um tipo de estrutura de dados que usamos no VBA para armazenar os dados. ArrayList no Excel VBA é uma classe usada para criar uma matriz de valores. Ao contrário dos arrays tradicionais, onde esses arrays têm um comprimento fixo, mas a Array List não tem nenhum comprimento fixo.

VAB ArrayList não faz parte da lista VBA; em vez disso, é uma biblioteca ou objeto externo que precisamos definir a referência antes de começarmos a acessá-lo.

Arrays em VBA são parte integrante de qualquer linguagem de codificação. Ao usar matrizes no Excel, podemos armazenar dados com um único nome de variável, declarando o “limite inferior e limite superior”.

Com matrizes regulares, precisamos decidir o limite inferior e o limite superior da matriz. Precisamos decidir com bastante antecedência no momento de declarar a variável no caso de Arrays estáticos, e no caso de Arrays Dinâmicos, precisamos decidir o comprimento do array depois de declarar a matriz usando a instrução "ReDim" em VBA.

No entanto, temos mais uma opção onde podemos armazenar o número “N” de valores sem declarar o limite inferior e o limite superior. Neste artigo, mostraremos essa opção, ou seja, "VBA ArrayList".

Para definir a referência ao objeto VBA ArrayList, siga as etapas abaixo.

Etapa 1: Vá para Ferramentas> Referências.

Etapa 2: A janela de referência da biblioteca de objetos aparecerá na sua frente. Selecione a opção “ mscorlib.dll.

Etapa 3: Clique em OK também. Agora podemos acessar o VBA ArrayList.

Exemplos de VBA ArrayList no Excel

Abaixo estão os exemplos de Excel VBA ArrayList.

Exemplo # 1 - Criar instância de VBA ArrayList

Como o Excel VBA ArrayList é um objeto externo, precisamos criar uma instância para começar a usá-lo. Para criar uma instância, siga as etapas abaixo.

Etapa 1: declare a variável como “ ArrayList.”

Código:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList End Sub

Etapa 2: Como a Array List é um objeto, precisamos criar uma nova instância.

Código:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= New ArrayList End Sub

Etapa 3: Agora, podemos continuar armazenando valores na variável do array usando o método “Add”. Na imagem abaixo, adicionei três valores.

Código:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= New ArrayList ArrayValues.Add "Hello" 'First Value ArrayValues.Add "Good"' Second Value ArrayValues.Add "Morning" 'Three Value End Sub

Agora atribuímos três valores, como identificamos qual é o primeiro e como podemos mostrar os valores ou usá-los de acordo com as nossas necessidades.

Se você se lembra do tipo de array tradicional, nos referimos ao primeiro valor de array como este “ArrayName (0)”

Da mesma forma, podemos usar a mesma técnica aqui também.

ArrayValue (0) = “Olá”
ArrayValue (1) = “Bom”
ArrayValue (2) = “Manhã”

Vamos mostrar isso na caixa de mensagem.

Código:

Sub ArrayList_Example1 () Dim ArrayValues ​​As ArrayList Set ArrayValues ​​= New ArrayList ArrayValues.Add "Hello" 'Primeiro valor ArrayValues.Add "Good"' Segundo valor ArrayValues.Add "Morning" 'Três valores MsgBox ArrayValues ​​(0) & vbNewLineValues ​​(0) & vbNewLine 1) & vbNewLine & ArrayValues ​​(2) End Sub

Agora execute o código usando a tecla F5 ou manualmente, então veremos “Hello”, “Good” e “Morning” na caixa de mensagem do VBA.

Assim, podemos armazenar qualquer número de valores com Array List Object.

Exemplo # 2 - Armazenar valores em células usando VBA ArrayList

Vamos ver o exemplo de armazenamento dos valores atribuídos às células na planilha. Agora, olhe para o código VBA abaixo.

Código:

Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Nomes do móvel MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Adicionar "VIVO" MobileNames.Add "LG" Set MobilePrice = Novo ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 End Sub

With two array lists, I have stored Names of the Mobile and Prices of the Mobile. Now we need to insert these values to the worksheet for this. We need to use loops. The below loop will do the job for me.

Below is the Overall code to store values to the worksheet.

Code:

Sub ArrayList_Example2 () Dim MobileNames As ArrayList, MobilePrice As ArrayList Dim i As Integer Dim k As Integer Set MobileNames = New ArrayList 'Nomes do móvel MobileNames.Add "Redmi" MobileNames.Add "Samsung" MobileNames.Add "Oppo" MobileNames. Adicionar "VIVO" MobileNames.Add "LG" Definir MobilePrice = Novo ArrayList MobilePrice.Add 14500 MobilePrice.Add 25000 MobilePrice.Add 18500 MobilePrice.Add 17500 MobilePrice.Add 17800 k = 0 Para i = 1 a 5 células (i, 1) .Value = MobileNames (k) Células (i, 2) .Value = MobilePrice (k) k = k + 1 Next i End Sub

Quando executamos o código manualmente ou usando a tecla F5, obteremos o resultado abaixo.

Artigos interessantes...