Aprenda a fazer um Formulário de Cadastro com VBA
Olá amigos,
Sabemos que nem todo mundo tem o mesmo conhecimento de Excel, seja para realização das tarefas pessoais ou no cotidiano corporativo.
Muitas vezes necessitamos que os dados inseridos em uma planilha sigam um determinado padrão, e para isso temos de criar um formulário de cadastro, fazendo o que o usuário digite os dados nos campos personalizados deste cadastro, e assim todos estes dados são registrados em sua ordem correta em seus respectivos locais e formatos.
Recomendo também…
LINK – Aprendendo como enviar Email com VBA usando o Excel
![]()
Com os formulários, você padroniza seus cadastros!
Os Formulários de Cadastro são utilizados há muito tempo para realização desses tipos de tarefas, facilitando assim a vida de quem recebe as planilhas e de quem manipula os dados, porém nem todas as pessoas possuem conhecimento necessário para criação desses formulários com VBA, por isso o intuito desta postagem é fazer com que você saiba como dar os primeiros passos e criar um formulário de cadastro.
Antes de mais nada…
Abra sua planilha, vá até o console de programação do VBA, com as teclas (ALT+F11) e insira em sua planilha um novo módulo e também um novo formulário, conforme a imagem abaixo.

Habilite a Toolbox ou Caixa de Ferramentas de Formulário
Caso não saiba como habilitar a Caixa de Ferramentas ou Toolbox, siga os passos abaixo:
- Clique no Menu View, ou Exibir.
- Clique na opção Toolbox ou Caixa de Ferramentas conforme a imagem abaixo.

Componentes que utilizaremos da caixa de ferramentas…
Agora é necessário inserir no formulário os componentes…
Componentes: Label, Combobox e um Botão de Comando.

Atenção!
É muito importante que sejam seguidas todos os passos de para que você possa realizar a tarefa corretamente e assim tenha o funcionamento correto do cadastro.
Construindo o Layout do Formulário
1° Passo – Criação do Formulário e Layout
Abaixo temos uma proposta de formulário onde iremos inserir 3 Combobox, 3 Labels e um Botão de Comando.

Após realizar a montagem do layout do formulário é necessário ajustar o nome de todos os campos, ter uma padronização do nome dos Campos facilita muito o seu desenvolvimento de código e também a identificação de cada componente quando necessário.
Exemplo:Ao invés de usar CommandButton1 utilize BtCadastro ou Bt_Cadastro.
Para isso clique no componente e posteriormente na janela de propriedades (F4) na propriedade (NAME) e altere para o nome que preferir.
É importante frisar que é ideal que você crie um nome de campo que possa lembrar posteriormente e que tenha um padrão lógico e de sintaxe também.
2° Passo – Criação do local onde os dados serão armazenados. (BD)
Crie uma sheet crie os cabeçalhos dos campos, no caso o título deverá ficar na linha 1 conforme a imagem abaixo.
Como é possível verificar na imagem abaixo temos apenas 1 linha preenchida, que é a linha do título.
3° Passo – Mecanismo que verifica qual é a próxima linha no BD
Com layout preenchido e o nome dos campos padronizados temos que definir como será feito o armazenamento das informações, estas informações por se tratarem de um cadastro devem ser armazenadas em algum lugar e de alguma forma.
Para isso será necessário implementarmos uma rotina que faz a contagem das linhas no local onde os dados serão inseridos.
SIMPLIFICANDO, esta rotina irá verificar quantas linhas estão preenchidas e qual será a próxima linha que receberá os dados do formulário de cadastro.
A rotina a seguir deverá ser implementada na no BOTÃO CADASTRAR, siga os passos a seguir:
- Clique no BOTÃO CADASTRAR 2 vezes.
- Será crida a Sub Rotina Chamada “Private Sub bt_cadastrar_Click()“
- Insira na Sub rotina o código abaixo:
Private Sub bt_cadastrar_Click()
Dim linha As Integer
linha = Sheets("BASE").Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).Row
'BASE é o local onde os registros serão armazenados, este local pode ser trocadoc conforme a sua necessidade ou preferência.
End Sub
Para verificar se a rotina está funcionando, atribua a variável linha a uma Box Mensagem conforme o exemplo abaixo.
Private Sub bt_cadastrar_Click()
Dim linha As Integer
linha = Sheets("BASE").Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).Row
Msgbox linha
End Sub
Com esta rotina definida saber em qual linha será a próxima a inserção dos dados.
4° Passo – Cadastrando os dados na BASE
Agora que você já sabe qual é a linha que receberá os dados você poderá implementar o mecanismo de registro dos dados na planilha.
Private Sub bt_cadastrar_Click()
linha = Sheets("BASE").Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).Row
Plan1.Cells(linha, 1).Value = Me.txt_nome.Value
Plan1.Cells(linha, 2).Value = Me.txt_sobrenome.Value
Plan1.Cells(linha, 3).Value = Me.txt_email.Value
Me.txt_nome.Value = Null
Me.txt_sobrenome = Null
Me.txt_email = Null
registro = Sheets("BASE").Cells(Rows.Count, "A").End(xlUp).Offset(1, 0).Row - 2
lbl_registro.Caption = registro
mensagem = MsgBox("Dados cadastrados com sucesso", vbInformation, ":: Cadastro ::")
End Sub
É importante ressaltar que a rotina não faz nenhum tipo de validação do tipo de dados que está sendo implementado seja ele um tipo de dados numérico, data ou texto, tão pouco esta rotina faz a verificação se os campos estão todos preenchidos ou não, para que isso seja feito será necessário implementar o trecho abaixo na rotina.
Com layout preenchido o nome dos campos definidos e a próxima linha que deverá ser preenchida o nosso trabalho fica muito mais fácil, pois a partir daí devemos definir quais são as colunas que receberão determinados dados do formulário.
Temos como exemplo a coluna 1 deverá receber os dados do TXT_NOME, a coluna 2 TXT_SOBRENOME, a coluna 3, TXT_EMAIL.
5° Passo – Abrindo o formulário a partir da Planilha com um botão.
Para abrir o formulário de cadastro a partir do Excel é um processo muito simples, você deve adicionar um novo módulo e criar a rotina abaixo.
Sub AbrirFormulario() Form_Cadastro.Show End Sub
Após criar a rotina abaixo insira um botão na sua planilha, ou autoforma para vincular a macro criada.
Ao vincular a macro criada ao botão, toda vez que ele for clicado a rotina AbrirFormulario será acionada e o formulário aberto no Excel.
CONCLUSÃO…
Como vocês podem notar é muito simples criar um formulário de cadastro utilizando o VBA, basta seguir as etapas conforme descrito que você obterá sucesso!!!
Peço que deixem seus comentários, opiniões e avaliações do artigo, através desses comentários opiniões e avaliações saberei como prosseguir e se estamos no caminho certo.
Desde já lhe agradeço pela visita, peço que se cadastre em nossa newsletter para receber nossos artigos, e faça bom uso do código e da planilha.
Um abraço!
Douglas Godoy




Deixe um comentário