Em VBA arrays são usados para definir o grupo de objetos juntos, existem nove funções de array diferentes em VBA e são ARRAY, ERASE, FILTER, ISARRAY, JOIN, LBOUND, REDIM, SPLIT e UBOUND, todas estas funções integradas para array no VBA, a função Array nos dá o valor para o argumento fornecido.
Função Excel VBA Array
A função de matriz é uma coleção de valores em uma única variável. Podemos fornecer um array para uma sub-rotina em VBA, funções e propriedades. Arrays VBA são uma das técnicas frequentemente usadas para armazenar mais de um valor na variável.
Exemplos de função de matriz VBA do Excel
Em vez de declarar muitas variáveis e armazenar os valores, podemos usar o array VBA do Excel para armazenar o valor em uma única variável. Por exemplo, veja o exemplo abaixo
Código:
Sub Array_Ex () Dim x As Integer Dim y As Integer x = 1 y = 2 Range ("A1"). Value = x Range ("A2"). Value = y End Sub
No exemplo acima, declarei duas variáveis chamadas x e y. X contém 1 como o valor e Y mantém 2 como o valor.
Agora, olhe para o exemplo de função de matriz VBA do Excel com uma única variável.
Código:
Sub Array_Ex () Dim x (1 a 2) como intervalo inteiro ("A1"). Valor = x (1) Intervalo ("A2"). Valor = x (2) End Sub
Agora, se você executar este código VBA, teremos valores nas células A1 e A2.

Variáveis de matriz retornaram o resultado como zero. Isso ocorre porque acabamos de declarar as variáveis como duas, mas não atribuímos nenhum valor a essas variáveis. Portanto, precisamos atribuir valores a essas variáveis.
Código:
Sub Array_Ex () Dim x (1 a 2) As Integer x (1) = 10 x (2) = 20 Intervalo ("A1"). Valor = x (1) Intervalo ("A2"). Valor = x (2 ) End Sub
Agora execute o código para obter resultados.

Antes de inserirmos os valores das variáveis de array nas células, precisamos atribuir o valor a essas variáveis de array declaradas, como atribuímos as variáveis x (1) = 10 & x (2) = 20.
Exemplo # 1 - Inserir números de série usando matriz estática
Vejamos o exemplo do uso de uma matriz estática para inserir números de série. É muito parecido com o anterior.
Código:
Sub StaticArray_Ex () Dim x (1 a 5) As Integer x (1) = 10 x (2) = 20 x (3) = 30 x (4) = 40 x (5) = 50 Intervalo ("A1"). Valor = x (1) Faixa ("A2"). Valor = x (2) Faixa ("A3"). Valor = x (3) Faixa ("A4"). Valor = x (4) Faixa ("A5" ) .Value = x (5) End Sub
Agora execute este código para inserir números de série.

Exemplo 2 - Inserir números de série usando matriz dinâmica
Agora veremos o segundo tipo de array, ou seja, um array dinâmico
Código:
Sub DynamicArray_Ex () Dim x () As Integer ReDim x (5) x (1) = 10 x (2) = 20 x (3) = 30 x (4) = 40 x (5) = 50 Faixa ("A1" ) .Valor = x (1) Faixa ("A2"). Valor = x (2) Faixa ("A3"). Valor = x (3) Faixa ("A4"). Valor = x (4) Faixa (" A5 "). Valor = x (5) End Sub
Agora execute este código para obter o resultado dos números de série. Obtemos o mesmo resultado do anterior.

Se você notar que não fornecemos o comprimento do array ao declarar a variável, em vez disso, atribuímos o último valor do array VBA usando a função VBA Redim. Redim contém o último valor do array a ser passado.
Exemplo # 3 - Criar uma função Inserir nomes de meses usando matriz
Vimos como trabalhar com arrays em VBA. Agora veremos como trabalhar com um array para criar uma função VBA no Excel. A função nada mais é do que uma função definida pelo usuário no VBA. Além de usar funções integradas, o Excel VBA nos permite criar nossas próprias funções também.
Código:
Função List_Of_Months () List_Of_Months = Array ("Jan", "Fev", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Set", "Out", "Nov "," Dec ") Função Final
O código abaixo irá criar uma função que pode inserir meses em nossa planilha excel.
Copie e cole o código abaixo no seu módulo.

Agora salve este código e feche o Editor do VBA. Após fechar o editor do VBA, vá para a planilha e digite a fórmula que acabamos de criar, e você deverá ver a fórmula chamada List_Of_Months em sua planilha.

Abra a fórmula e pressione Enter. Obteremos o nome do primeiro mês, ou seja, janeiro

Se você inserir a fórmula mais uma vez, ainda teremos apenas janeiro, não o próximo mês, fevereiro. Portanto, primeiro selecione 12 colunas em uma linha.

Agora abra a fórmula na célula D1.

Como criamos a fórmula com a matriz, precisamos fechar as fórmulas apenas como uma fórmula de matriz. Portanto, segure Ctrl + Shift + Enter. Teríamos todos os nomes de 12 meses.

Coisas para lembrar
- Existem mais dois tipos de array disponíveis, ou seja, array bidimensional e array multidimensional.
- As matrizes começam em 0, não em 1. Zero significa a primeira linha e a primeira coluna.
- A matriz é um grande tópico. Você precisa entendê-lo para avançar para o próximo nível.
- A variável de matriz será aquela que contém muitos dados cada vez que avança para o próximo nível.
- Redim é usado para armazenar o último comprimento da matriz em um tipo de matriz dinâmica.