Formulário de Múltiplas Etapas Aula 03: Salvar Dados com VBA
Formulário de Múltiplas Etapas com VBA: Como Programar o Botão Salvar 💾
Você já imaginou transformar suas planilhas estáticas em sistemas de cadastro dinâmicos e profissionais? Com um formulário de múltiplas etapas com VBA, você organiza a coleta de informações e automatiza todo o processo de registro.
Nesta aula, vamos focar no coração do formulário: o botão salvar. Você vai aprender o passo a passo para escrever o código VBA que pega os dados inseridos no UserForm e os envia diretamente para a sua planilha do Excel, criando um registro sequencial de forma inteligente. Vamos lá! 🚀
Acessando o Ambiente de Programação (Editor VBA)
Para começar a programar, primeiro precisamos abrir o editor de Visual Basic for Applications (VBA).
- Abra o Editor VBA: Utilize o atalho Alt + F11.
- Visualize o Projeto: Se a janela do projeto não estiver visível, use o atalho Ctrl + R.
- Acesse o Formulário: Na janela do projeto, dê um duplo clique sobre o objeto UserForm1 para abri-lo.
O Evento Click: A Mágica do Botão Salvar VBA
A ação de cadastrar os produtos acontecerá quando o usuário clicar no botão “Salvar”. Portanto, todo o nosso código será escrito dentro do evento Click desse botão.
- No seu formulário, dê um duplo clique sobre o botão “Salvar”.
- O VBA abrirá automaticamente a janela de código e criará a estrutura Private Sub BtSalvar_Click().
- Todo o código que escrevermos aqui dentro será executado no momento do clique.
Private Sub BtSalvar_Click()
' Nosso código virá aqui
End Sub
Code language: PHP (php)
Como Cadastrar Dados do Formulário na Planilha Excel
Agora, vamos à parte principal: escrever o código que transfere as informações. O segredo é dizer ao VBA exatamente onde (em qual célula) ele deve colocar cada dado.
Identificando a Célula de Destino
Existem duas formas principais de se referir a uma célula no VBA: Range e Cells.
- Usando Range: Você especifica o endereço da célula, como Range(“C11”).
- Usando Cells: Você especifica o número da linha e o número (ou a letra) da coluna, como Cells(11, “C”) ou Cells(11, 3).
Usaremos o método Cells por ser mais flexível para trabalhar com variáveis.
Encontrando a Próxima Linha Vazia
Para que o nosso registro sequencial VBA funcione, não podemos fixar um número de linha. Precisamos de um código que encontre a próxima linha disponível na coluna de registros.
Vamos criar uma variável para armazenar esse número de linha:
Dim lin As Long
'Encontra a próxima linha vazia na coluna B, começando a busca após a célula B10
lin = PlanBase.Range("B:B").Find(Empty, PlanBase.Range("B10")).Row
Code language: PHP (php)
Este código procura a primeira célula vazia (Empty) na coluna “B”, a partir da célula B10, e armazena o número da linha encontrada na variável lin.
Criando o Registro Sequencial
Com a linha correta identificada, podemos criar nosso ID sequencial.
'Verifica se é o primeiro registro
If lin = 11 Then
PlanBase.Cells(lin, "B").Value = 1
Else
'Pega o valor da célula anterior, soma 1 e insere na célula atual
PlanBase.Cells(lin, "B").Value = PlanBase.Cells(lin - 1, "B").Value + 1
End If
Code language: PHP (php)
Salvando Todas as Informações do Formulário
Agora que já temos a lógica do registro sequencial, basta replicar o comando de salvamento para cada campo do formulário, ajustando a coluna de destino.
' Salva a Descrição do Produto na coluna C
PlanBase.Cells(lin, "C").Value = TxtDescricao.Text
' Salva o Código/SKU na coluna D
PlanBase.Cells(lin, "D").Value = TxtCodigo.Text
' Salva a Categoria na coluna E
PlanBase.Cells(lin, "E").Value = TxtCategoria.Text
' Salva a Validade na coluna F
PlanBase.Cells(lin, "F").Value = TxtValidade.Text
' ... continue para os outros campos do formulário ...
Code language: PHP (php)
Pronto! Seu código VBA para salvar dados está funcional.
🚀 QUER SER UM MESTRE EM AUTOMAÇÃO? 🚀
Se você gostou desta aula e quer levar suas habilidades em Excel a um nível profissional, conheça meu curso completo de VBA para Excel. Aprenda a criar sistemas, automatizar tarefas e se destacar no mercado!
0 Comentários