Entrar com a conta da Microsoft
Entrar ou criar uma conta.
Olá,
Selecionar uma conta diferente.
Você tem várias contas
Escolha a conta com a qual você deseja entrar.

Resumo

Este artigo contém procedimentos de exemplo do Microsoft Visual Basic for Applications que você pode usar para trabalhar com vários tipos de matrizes.

Informações adicionais

A Microsoft fornece exemplos de programação somente para ilustração, sem garantia expressa ou implícita. Isso inclui, mas não se limita a, as garantias implícitas de comercialização ou aptidão para uma finalidade específica. Este artigo pressupõe que você esteja familiarizado com a linguagem de programação que está sendo demonstrada e com as ferramentas usadas para criar e depurar procedimentos. Os engenheiros de suporte da Microsoft podem ajudar a explicar a funcionalidade de um procedimento específico, mas não modificarão esses exemplos para fornecer funcionalidade ou procedimentos de construção adicionais para atender aos seus requisitos específicos. OBSERVAÇÃO: Em Visual Basic for Applications procedimentos, as palavras após o após o apóstrofo (') são comentários.
 

Para preencher uma matriz e, em seguida, copiá-la para uma planilha

  1. Abra uma pasta de trabalho e insira uma folha de módulos do Visual Basic.

  2. Digite o código a seguir na folha de módulos.

    Sub Sheet_Fill_Array()
       Dim myarray As Variant
       myarray = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
       Range("a1:a10").Value = Application.Transpose(myarray)
    End Sub
    
  3. Selecione Planilha1.

  4. No menu Ferramentas, aponte para Macro e clique em Macros.

  5. Na caixa de diálogo Macro, clique em Sheet_Fill_Array e clique em Executar.

Para tirar valores de uma planilha e preencher a matriz

  1. Digite valores na Planilha1 nas células A1:A10.

  2. Em uma folha de módulos do Visual Basic, digite o seguinte código:

    Sub from_sheet_make_array()
       Dim thisarray As Variant
       thisarray = Range("a1:a10").Value
    
       counter = 1                'looping structure to look at array
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter, 1)
          counter = counter + 1
       Wend
    End Sub
    
  3. Selecione Planilha1.

  4. No menu Ferramentas, aponte para Macro e clique em Macros.

  5. Na caixa de diálogo Macro, clique em from_sheet_make_array e clique em Executar.

Para passar e receber uma matriz

  1. Em uma planilha de módulos, digite o seguinte código:

    Sub pass_array()
       Dim thisarray As Variant
       thisarray = Selection.Value
       receive_array (thisarray)
    End Sub
    
    Sub receive_array(thisarray)
       counter = 1
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter, 1)
          counter = counter + 1
       Wend
    End Sub
    
  2. Selecione Planilha1 e realce o intervalo A1:A10.

  3. No menu Ferramentas, aponte para Macro e clique em Macros.

  4. Na caixa de diálogo Macro, clique em pass_array e clique em Executar.

Para comparar duas matrizes

  1. Crie dois intervalos nomeados na Planilha1. Nomeie um intervalo1 e o outro intervalo2.

    Por exemplo, realce o intervalo de células A1:A10 e nomeie-o como range1; realçar o intervalo de células B1:B10 e nomeá-lo range2.

  2. Digite o código a seguir na folha de módulos.

    Sub compare_two_array()
       Dim thisarray As Variant
       Dim thatarray As Variant
    
       thisarray = Range("range1").Value
       thatarray = Range("range2").Value
       counter = 1
       While counter <= UBound(thisarray)
          x = thisarray(counter, 1)
          y = thatarray(counter, 1)
          If x = y Then
             MsgBox "yes"
          Else MsgBox "no"
          End If
          counter = counter + 1
       Wend
    End Sub
    
  3. Selecione Planilha2.

  4. No menu Ferramentas, aponte para Macro e clique em Macro.

  5. Na caixa de diálogo Macro, clique em compare_two_array e clique em Executar.

    Você verá uma caixa de mensagens para cada comparação.

Para preencher uma matriz dinâmica

  1. Em uma planilha de módulos, digite o seguinte código:

    Sub fill_array()
    
       Dim thisarray As Variant
       number_of_elements = 3     'number of elements in the array
    
       'must redim below to set size
       ReDim thisarray(1 To number_of_elements) As Integer
       'resizes this size of the array
       counter = 1
       fillmeup = 7
       For counter = 1 To number_of_elements
          thisarray(counter) = fillmeup
       Next counter
    
       counter = 1         'this loop shows what was filled in
       While counter <= UBound(thisarray)
          MsgBox thisarray(counter)
          counter = counter + 1
       Wend
    
    End Sub
    
  2. No menu Ferramentas, aponte para Macro e clique em Macros.

  3. Na caixa de diálogo Macro, clique em fill_array e clique em Executar.

OBSERVAÇÃO: a alteração da variável "number_of_elements" determinará o tamanho da matriz.
 

Precisa de mais ajuda?

Quer mais opções

Explore os benefícios da assinatura, procure cursos de treinamento, saiba como proteger seu dispositivo e muito mais.

As comunidades ajudam você a fazer e responder perguntas, fazer comentários e ouvir especialistas com conhecimento avançado.

Essas informações foram úteis?

Qual é o seu grau de satisfação com a qualidade do idioma?
O que afetou sua experiência?
Ao pressionar enviar, seus comentários serão usados para aprimorar os produtos e serviços da Microsoft. Seu administrador de TI poderá coletar esses dados. Política de Privacidade.

Agradecemos seus comentários!

×