Tutoriais de matriz | |
---|---|
Array Mega-Guide | sim |
Obter tamanho da matriz | |
Clear Array | |
Matriz de Filtro | |
Transpor Array | |
Matriz de retorno de função | |
Remover Duplicados | |
Cobrimos uma introdução às variáveis e constantes em nosso tutorial introdutório Tipos de dados VBA - Variáveis e constantes. Neste tutorial, veremos o que são variáveis de array e como você pode usá-las em seu código.
O que é uma variável de matriz VBA?
Uma variável de matriz VBA armazena uma lista ou grupo de elementos. Uma variável de matriz VBA também pode ser considerada como um grupo de variáveis, armazenadas com o mesmo nome e com o mesmo tipo de dados. Todos os elementos da matriz devem ser do mesmo tipo. Um exemplo seria uma lista de frutas. Uma matriz pode armazenar texto ou números. Você se refere a um elemento em uma matriz usando seu número de índice. Você pode declarar uma variável de array usando a palavra-chave Dim, Static, Public ou Private.
Variável de matriz estática
Uma variável de matriz estática tem um tamanho fixo ou um número definido de itens na lista. Você declararia uma variável de matriz estática da seguinte maneira:
123456789 | Sub DeclaringAStaticArrayVariable ()Sapatos escuros (1 a 3) como cordaSapatos (1) = "Botas"Sapatos (2) = "Sandálias"Sapatos (3) = "Tênis"End Sub |
Você pode exibir um determinado elemento na matriz, referindo-se ao seu número de índice, conforme mostrado no código a seguir:
1234567891011 | Sub DeclaringAStaticArrayVariable ()Sapatos escuros (1 a 3) como cordaSapatos (1) = "Botas"Sapatos (2) = "Sandálias"Sapatos (3) = "Tênis"Debug.Print Shoes (1)End Sub |
Se você pressionar F5 para executar seu código, obterá o seguinte resultado na janela imediata:
Variável de matriz dinâmica
O tamanho de uma variável de matriz dinâmica muda em tempo de execução e é definido em outras palavras apenas em tempo de execução. Você não declara inicialmente o número de itens ou elementos na matriz como para a variável de matriz estática, mas você usa a palavra-chave ReDim para especificar o tamanho ou o número de itens que uma matriz dinâmica tem. Você pode então redimensionar sua matriz usando a palavra-chave ReDim:
123456789101112131415161718192021 | Sub DeclaringADynamicArrayVariable ()Dim differentvegetables () As StringReDim vegetais diferentes (3)diferentes vegetais (1) = "cenouras"diferentes vegetais (2) = "abóbora"diferentes vegetais (3) = "butternut"MsgBox Join (diferentes vegetais, vbCr)ReDim vegetais diferentes (4)diferentes vegetais (1) = "cenouras"diferentes vegetais (2) = "abóbora"diferentes vegetais (3) = "butternut"diferentes vegetais (4) = "repolho"MsgBox Join (diferentes vegetais, vbCr)End Sub |
Ao executar esse código, você obtém a caixa de mensagem com todos os itens na matriz que foi especificada usando a palavra-chave ReDim e, em seguida, outra caixa de mensagem mostrando o número atualizado de itens na matriz.
O resultado é: