/ / Coleção de controles VBA do Excel

Coleção de controles VBA do Excel

Ao criar formulários do usuário em Excel VBA, você pode usar o Coleção Controls para percorrer facilmente os controles e definir uma propriedade de cada controle para um valor específico.

A forma de usuário que vamos criar é a seguinte:

Coleção de controles no Excel VBA

Para criar este formulário de usuário, execute as seguintes etapas:

1. Abra o Editor do Visual Basic. Se o Explorador de Projetos não estiver visível, clique em Visualizar, Explorador de Projetos.

2. Clique em Inserir, Userform. Se a caixa de ferramentas não aparecer automaticamente, clique em Exibir, Caixa de ferramentas. Sua tela deve ser configurada como abaixo.

Configuração da Tela Userform no Excel VBA

3 Adicione o rótulo, as caixas de texto (primeiro no topo, o segundo abaixo do primeiro e assim por diante) e o botão de comando. Depois que isso for concluído, o resultado deve ser consistente com a imagem da forma de usuário mostrada anteriormente. Por exemplo, crie um controle de caixa de texto clicando em TextBox na caixa de ferramentas. Em seguida, você pode arrastar uma caixa de texto no Userform.

4. Para alterar a legenda do formulário do usuário, rótulo e botão de comando, clique em Exibir, janela Propriedades e clique em cada controle.

5. Para mostrar a forma de usuário, coloque um botão de comando em sua planilha e adicione a seguinte linha de código:

Private Sub CommandButton1_Click()

UserForm1.Show vbModeless

End Sub

Explicação: adicionando vbModeless, você pode usar o Userform e trabalhar em sua planilha ao mesmo tempo.

Agora criamos a primeira parte do formulário de usuário. Embora pareça arrumado, nada acontecerá quando clicarmos no botão de comando no Userform.

6. Abra o Editor do Visual Basic.

7. No Project Explorer, clique duas vezes em UserForm1.

8. Clique duas vezes no botão de comando.

9. Adicione as seguintes linhas de código:

Private Sub CommandButton1_Click()

Dim i As Integer

For i = 1 To 10
    Controls("TextBox" & i).Value = Cells(i + 1, 1).Value
Next i

End Sub

Explicação: Com apenas algumas linhas de código, podemos preencher as caixas de texto com os números de telefone da planilha. Usamos o operador & para concatenar (juntar) os elementos. Essas linhas de código funcionam porque não alteramos os nomes dos controles da caixa de texto (TextBox1, TextBox2, TextBox3 etc.) Para alterar os nomes dos controles, clique em View, Properties Window e clique em cada controle.

Resultado quando você clica no botão de comando na folha:

Resultado da Coleta de Controles

Leia também: