NUNCA MAIS PASSE RAIVA POR NÃO CONSEGUIR RESOLVER UM PROBLEMA COM O EXCEL - GARANTIDO!
UNIVERSIDADE DO VBA - Domine o VBA no Excel Criando Sistemas Completos - Passo a Passo - CLIQUE AQUI
Objetivo:
Continuar o desenvolvimento dosistema para gerenciar uma pequena empresa, codificaremos a interface graficaagenda, além de desenvolver o banco de dados armazenar os registros, tudo deforma simples e direta.
Pré-requisito:
Para você poder acompanhar odesenvolvimento deste tutorial, será necessário ter conhecimento no mínimo do “CursoBásico de Excel e os Tutoriais Utilizando Editor do Visual Basic do Excel Parte1 e Parte2” Parte 1, Parte 2, Parte 3, Parte 4, Parte 5, Parte 6 e Parte 7 deste tutorial.
Ola! Pessoal, criaremos o bancode dados , este será para armazenar os registros que serão incluídos através dainterface agenda. Utilizaremos a plan4, modifque o nome para a “AGENDA”, insira os campos conforme e mostrado na tela aseguir:
COD, HORARIO, ASSUNTO, ENDERECO, BAIRRO, TELEFONE e OBS.
Tela 001
Insira na primeira linha da planilha , cor cinza, negrito ecentralizado.
Tela 002
Agora, vocêdevera fazer os ajustes nas propriedades dos objetos.
COD colocarna categoria “Numero”.
Tela 003
ASSUNTO, ENDERECO, BAIRRO, OBSinserir na categoria “texto”.
Tela 004
TELEFONE inserir na categoria Especial + Telefone ”.
Tela 005
Codificaremos a interface agenda, insira o código no formulário dentro doevento initialize.
Label_n =Application.WorksheetFunction.CountA(Plan4.Columns(1)) – 1
Tela 006
Universidade do VBA - Curso Completo, com Certificado e com Atualizações Semanais
Domine, sem Dificuldades, a Programação VBA no Excel, Através da Criação de Sistemas Profissionais Completos - Com Exemplos Práticos e Explicações Detalhadas - Passo a Passo - Tela a Tela - Comando a Comando!
Aplica-se ao Excel 2019, 2016, 2013 e 2010!
Para todos os detalhes, acesse:
Os códigos a seguir devem ser inseridos dentro do evento clic do botão.
BotãoIncluir:
Dim bd As Database
Dim Rs As Recordset
Set bd =OpenDatabase(ThisWorkbook.Path & "\" & ThisWorkbook.Name,False, False, "excel 8.0")
Set Rs =bd.OpenRecordset("AGENDA$", dbOpenDynaset)
If Me.TextBox_cod >Me.Label_n Then
If Me.TextBox_horario ="" Then
Me.TextBox_horario = "-"
End If
If Me.TextBox_assunto ="" Then
Me.TextBox_assunto.Text ="-"
End If
If Me.TextBox_endereco ="" Then
Me.TextBox_endereco.Text ="-"
End If
If Me.TextBox_bairro = ""Then
Me.TextBox_bairro.Text ="-"
End If
If Me.TextBox_telefone ="" Then
Me.TextBox_telefone.Text ="-"
End If
If Me.TextBox_obs = ""Then
Me.TextBox_obs.Text ="-"
End If
Dim CADASTRO(1 To 8)
CADASTRO(1) = UCase(Me.TextBox_cod)
CADASTRO(2)= UCase(Me.TextBox_horario)
CADASTRO(3) = UCase(Me.TextBox_assunto)
CADASTRO(4) = UCase(Me.TextBox_endereco)
CADASTRO(5) = UCase(Me.TextBox_bairro)
CADASTRO(6) = UCase(Me.TextBox_telefone)
CADASTRO(7)= UCase(Me.TextBox_obs)
CADASTRO(8) = UCase(Me.TextBox_cod.Value)
Dim GERENCIADORAs Object
Dim L, i
Set GERENCIADOR = Plan4.Cells(1, 1).CurrentRegion
L = GERENCIADOR.Rows.Count + 1
If Len(Me.TextBox_cod) = 0 Then
MsgBox "VOCÊ NÃODIGITOU NENHUM NOME PARA INCLUSÃO", vbCritical, "CADASTRO DECLIENTES"
Else
For i = 1 To 8
Plan4.Cells(L, i).Value =Trim(CADASTRO(i))
Next i
Me.TextBox_cod =""
Me.TextBox_horario= ""
Me.TextBox_assunto.Text = ""
Me.TextBox_endereco.Text =""
Me.TextBox_bairro.Text = ""
Me.TextBox_telefone.Text = ""
Me.TextBox_obs.Text = ""
MsgBox"CADASTRADO", vbInformation, "EFETUADO COM SUCESSO"
ThisWorkbook.Save
End If
Exit Sub
Else
MsgBox "No campo COD digite um número maior do que háno campo Total Registro para casdastrar."
End If
BotãoPesquisar:
Dim bd As Database
Dim Rs As Recordset
Dim LIN
Set bd =OpenDatabase(ThisWorkbook.Path & "\" & ThisWorkbook.Name,False, False, "excel 8.0")
Set Rs =bd.OpenRecordset("AGENDA$", dbOpenDynaset)
LIN = 2
Do Until Rs.EOF
If Rs("TELEFONE")= Me.TextBox_telefone.Text Then
Me.TextBox_cod =Rs.Fields("COD")
Me.TextBox_horario = Rs.Fields("HORARIO")
Me.TextBox_assunto = Rs.Fields("ASSUNTO")
Me.TextBox_endereco = Rs.Fields("ENDERECO")
Me.TextBox_bairro = Rs.Fields("BAIRRO")
Me.TextBox_obs =Rs.Fields("OBS")
Me.TextBox_codf.Text = LIN
End If
LIN = LIN + 1
Rs.MoveNext
Loop
Botão Editar:
Dim CADASTRO(2 To 8)
CADASTRO(2) = UCase(Me.TextBox_horario)
CADASTRO(3) = UCase(Me.TextBox_assunto)
CADASTRO(4) = UCase(Me.TextBox_endereco)
CADASTRO(5) = UCase(Me.TextBox_bairro)
CADASTRO(6)= UCase(Me.TextBox_telefone)
CADASTRO(7) = UCase(Me.TextBox_obs)
CADASTRO(8) = UCase(Me.TextBox_codf.Value)
For i = 2 To 8
Plan4.Cells(Val(Me.TextBox_cod) + 1,i).Value = Trim(CADASTRO(i))
Next i
MsgBox"ALTERAÇÃO EFETUADA", vbInformation, "DOS DADOS"
Botão Excuir:
Dim GERENCIADOR
GERENCIADOR =MsgBox("DESEJA REALMENTE EXCLUIR O CLIENTE?", vbYesNo + vbQuestion,"BANCO DE DADOS")
If GERENCIADOR = vbYes Then
Plan4.Cells(Me.TextBox_codf,1).EntireRow.Delete
Me.TextBox_cod.Text =""
Me.TextBox_horario.Text =""
Me.TextBox_assunto.Text =""
Me.TextBox_endereco.Text =""
Me.TextBox_bairro.Text =""
Me.TextBox_telefone.Text =""
Me.TextBox_obs.Text =""
MsgBox "REGISTROS EXCLUÍDOCOM SUCESSO."
ThisWorkbook.Save
End If
Botão Voltar:
Me.hide
Nesta parte codificamos a interface grafica agenda,você inseriu todos os objetos, também maisum banco de dados para fazer oarmazenamento dos registros, tudo de forma simples e objetiva, na próxima partedo tutorial daremos continuidade no desenvolvimento do sistema. Bons estudos eaté a próxima parte.
Contato: Telefone: (51) 3717-3796 | E-mail: webmaster@juliobattisti.com.br | Whatsapp: (51) 99627-3434
Júlio Battisti Livros e Cursos Ltda | CNPJ: 08.916.484/0001-25 | Rua Vereador Ivo Cláudio Weigel, 537 - Universitário, Santa Cruz do Sul/RS, CEP: 96816-208
Todos os direitos reservados, Júlio Battisti 2001-2024 ®
LIVRO: MACROS E PROGRAMAÇÃO VBA NO EXCEL 2016 - CURSO COMPLETO E PRÁTICO
DOMINE A PROGRAMAÇÃO VBA NO EXCEL - 878 PÁGINAS - CLIQUE AQUI