Macro para Salvar Cadastro de Clientes Excel VBA

O cadastro de cliente no Excel e de grande importância para que se organize as informações do dia a dia em uma empresa ou organização. Hoje disponibilizo varia macros prontas para você que está criando ou que queira criar seu projeto em Excel VBA de cadastro de cliente totalmente automatizado.

Mais informações – Macro para salvar cadastro de clientes Excel VBA

Caso você já tenha conhecimento em Excel avançado mais queira iniciar na programação da uma estudada nesse código e crie alguns projetos várias vezes até você dominar por completo o básico da programação e o mais importante aprender.

Disponibilizamos esses códigos em VBA para que você possa usa-los e sem dúvida não ficar somente no Ctrl+c e Ctrl+v, mais aprenda a programar de verdade com os códigos já prontos para adaptação.

Começando o nosso código – Macro para salvar cadastro de clientes Excel VBA

Quando você criar seu formulário renomeia ele de acordo com cada item e suas funcionalidades. Nesse primeiro tópico vamos codificar o comando salvar, que vai salvar os dados do formulário na planilha, veja que renomeamos com o nome Cmd_Salvar justamente por se tratar de um botão Salvar.

Macro para salvar cadastro de clientes Excel VBA

Private Sub Cmd_Salvar_Click()

Dim Totalregistro As Long

Dim ws As Worksheet

Set ws = Worksheets(“Clientes”)

‘ variavel totalregistro para encontrar a ultima celula em branco

‘Totalregistro = Worksheets(“dados”).UsedRange.Rows.Count + 1

Totalregistro = ws.Cells.Find(What:=”*”, SearchOrder:=xlRows, _

SearchDirection:=xlPrevious, LookIn:=xlValues).Row + 1

‘comando para selecionar a planilha

Worksheets(“Clientes”).Select

Se você tem um conhecimento básico e esta iniciando veja que as caixa de texto do nosso formulários esta renomeadas como Text e em seguida o nome de cada caixa isso depende do que se trata aquela respectiva caixa de texto, e assim você vai renomeando de acordo com as funções de cada uma.

‘aqui começa a gravação de dados

Cells(Totalregistro, 1) = Me.TextNome

Cells(Totalregistro, 2) = Me.TextEndereco

Cells(Totalregistro, 3) = Me.TextMunicipio

Cells(Totalregistro, 4) = Me.TextCNPJ

Cells(Totalregistro, 5) = Me.TextTelefone

Cells(Totalregistro, 6) = Me.TextNumero

Cells(Totalregistro, 7) = Me.TextCEP

Cells(Totalregistro, 8) = Me.TextEstado

Cells(Totalregistro, 9) = Me.TextIncEstadual

Cells(Totalregistro, 10) = Me.TextEmail

No final do processo para que o usuário não possa ficar perdido sem saber se as informações foram salvas ou não, colocamos uma mensagem informado que o processo foi concluído com sucesso, assim ele saberá que as informações formam salvas no banco de dados. Essa mensagem e personalizada de acordo com suas preferências.

‘mensagem de gravação

MsgBox “Dados salvo com sucesso!”

Após salvar as informações no banco de dados precisamos limpar as caixas de texto para novas digitações automaticamente. Para isso vamos usar essas referências abaixo apenas compiamos os nomes da caixa de texto que desejamos limpar e colocamos o sinal de igual (=) e em seguida as (“”) isso já vai limpar os dados toda vez que for salvo um cadastro e estará pronto para digitar novos cadastros. Também é possível e muitas pessoas usam o Emputy que executa a mesma função. Pessoal o comando Me você usa para chamar o código desejado ok.

‘comandos para limpar as caixas de texto

Me.TextNome = “”

Me.TextEndereco = “”

Me.TextMunicipio = “”

Me.TextCNPJ = “”

Me.TextTelefone = “”

Me.TextNumero = “”

Me.TextCEP = “”

Me.TextEstado = “”

Me.TextIncEstadual = “”

Me.TextEmail = “”

Esse SetFocus e para onde estamos direcionando nosso ponteiro do mouse toda vez que abrimos o formulário.

Macro para salvar cadastro de clientes Excel VBA

‘comando para selecionar a caixa de texto nome

Me.TextNome.SetFocus

End Sub

Aqui vamos usar a macro para pre

Private Sub ListView1_Click()

If ListView1.ListItems.Count <= 0 Then

Exit Sub

End If

Me.TextNome = ListView1.SelectedItem.Text

Me.TextEndereco = ListView1.SelectedItem.ListSubItems(1).Text

Me.TextMunicipio = ListView1.SelectedItem.ListSubItems(2).Text

Me.TextCNPJ = ListView1.SelectedItem.ListSubItems(3).Text

Me.TextTelefone = ListView1.SelectedItem.ListSubItems(4).Text

Me.TextNumero = ListView1.SelectedItem.ListSubItems(5).Text

Me.TextCEP = ListView1.SelectedItem.ListSubItems(6).Text

Me.TextEstado = ListView1.SelectedItem.ListSubItems(7).Text

Me.TextIncEstadual = ListView1.SelectedItem.ListSubItems(8).Text

Me.TextEmail = ListView1.SelectedItem.ListSubItems(9).Text

End Sub

Public Sub ExcluirDados()

ListView1.ListItems.Remove (ListView1.SelectedItem.Index)

End Sub

Evento para formatar o CEP, lembrando que você precisa selecionar esse evento na caixa do seu lado direito do editor visual basic para só assim funcionar corretamente.

Private Sub TextCEP_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TextCEP = Format(TextCEP, “00””.””000″”-“”000″””)

End Sub

Aqui usamos esse evento para formatar o CNPJ para na hora que for digitado já preencher a formatação.

Private Sub TextCNPJ_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TextCNPJ = Format(TextCNPJ, “00””.””000″”.””000″”/””0000-00″)

End Sub

Esse tem a mesma função de maisculo na Caixa de texto

Private Sub TextEndereco_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

KeyAscii = Asc(UCase(Chr(KeyAscii)))

End Sub

Esse tem a mesma função de maisculo na Caixa de texto

Private Sub TextEstado_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

KeyAscii = Asc(UCase(Chr(KeyAscii)))

End Sub

Esse evento realiza a formatação do telefone de maneira automático, assim que você digitar esse ja vai aparecer com o formato de telefone.

Private Sub TextTelefone_Exit(ByVal Cancel As MSForms.ReturnBoolean)

TextTelefone = Format(TextTelefone, “(00″”) “”0000″”-“”0000″)

End Sub

Esse evento faz com que os nomes digitados dentro da Caixa de texto ficam em letras maiúsculas independentes do teclado se esteja ativado ou não.

Private Sub TextMunicipio_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

KeyAscii = Asc(UCase(Chr(KeyAscii)))

End Sub

Esse evento faz com que os nomes digitados dentro da Caixa de texto ficam em letras maiúsculas independentes do teclado se esteja ativado ou não.

Private Sub TextNome_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)

KeyAscii = Asc(UCase(Chr(KeyAscii)))

End Sub

Esse commando aqui vai preencher a Listview os cabeçalhos e e linhas e grades caso você tenha interesse em colocar em seu projeto.

‘PRENCHE A LISTVIEW

Private Sub UserForm_Initialize()

With Frm_Cadastro.ListView1

.Gridlines = True

.View = lvwReport

.FullRowSelect = True

.ColumnHeaders.Add Text:=”Nome”, Width:=140

.ColumnHeaders.Add Text:=”Endereço”, Width:=140

.ColumnHeaders.Add Text:=”Município”, Width:=100

.ColumnHeaders.Add Text:=”CNPJ”, Width:=90

.ColumnHeaders.Add Text:=”Telefone”, Width:=65

.ColumnHeaders.Add Text:=”Numero”, Width:=40

.ColumnHeaders.Add Text:=”CEP”, Width:=60

.ColumnHeaders.Add Text:=”Estado”, Width:=35

.ColumnHeaders.Add Text:=”Inscrição.Estd”, Width:=60

.ColumnHeaders.Add Text:=”E-Mail”, Width:=120

Macro para salvar cadastro de clientes Excel VBA

Aqui realizamos os alinhamentos das areas que desejamos alinhar

Me.ListView1.ColumnHeaders(5).Alignment = lvwColumnCenter

Me.ListView1.ColumnHeaders(6).Alignment = lvwColumnCenter

Me.ListView1.ColumnHeaders(7).Alignment = lvwColumnCenter

Me.ListView1.ColumnHeaders(8).Alignment = lvwColumnCenter

 

End With

Sheets(“Clientes”).Select

Call Carregar_Lista

Call ContarRegistro

End Sub

Macro para salvar cadastro de clientes Excel VBA

Essa macro e para carregar os dados da Listview no formulário esses dados vem da sua planilha que você criou para receber as informações dos cadastros.

Private Sub Carregar_Lista()

Dim A As Integer

A = 2

While (Range(“A” & A).Value <> “”)

Set List = Me.ListView1.ListItems.Add(Text:=Range(“A” & A).Value)

List.SubItems(1) = Range(“B” & A).Value

List.SubItems(2) = Range(“C” & A).Value

List.SubItems(3) = Range(“D” & A).Value

List.SubItems(4) = Range(“E” & A).Value

List.SubItems(5) = Range(“F” & A).Value

List.SubItems(6) = Range(“G” & A).Value

List.SubItems(7) = Range(“H” & A).Value

List.SubItems(8) = Range(“I” & A).Value

List.SubItems(9) = Range(“J” & A).Value

A = A + 1

Wend

End Sub

Macro para salvar cadastro de clientes Excel VBA

Vamos criar uma Label para usarmos no formulário para contarmos quantos intens possui no nosso cadastro dentro da lista.

Public Sub ContarRegistro()

lbl_NumeroRegistro = ListView1.ListItems.Count & ” – Registros Encontrados”

End Sub

Veja mais…

Planilhas para a gestão do seu negócio em Excel

Gerar orçamento em Excel e salvar em PDF

Planilha simulador de parcelamento em Excel

Como controlar recebimentos em cartões de crédito

A Importância do Fluxo de Caixa nas Empresas

Sistema Controle de Contas a Pagar e Receber

Planilha agenda de contato corporativo em Excel

Planilha para Controlar de Dízimos e Ofertas em Excel

Planilhas em Excel para Abertura de Empresa

Como Usar a função PROCV (VLOOKUP) do Excel

Bom pessoal era isso que queríamos passar para vocês que e iniciante e queira se aprofundar mais e aprender a programação.

Qualquer dúvida posta nos comentários abaixo que respondo ou entre em contato por e-mail.