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:
O objetivo deste tutorial é continuar o desenvolvimento do sistema agendaconsulta, nesta tutorial iremos criar obanco de dados para armazenar os registros, para isso vamos utilizar a primeiraplanilha, também iremos codificar o formulário. Tudo de forma simples e direta,mostrado através de telas.
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 2e Parte 3 deste tutorial.
Vamos começar desenvolvendo o banco de dados, utilizando aprópria planilha do excel , utilizaremosa plan1, modifique o nome da mesma para “MEDICOS”. Feito issovamos inserir os seguintes campos na mesma:
COD, NOME, AREA, TELEFONE, EMAIL.
Tela 001
Vamos inserir uma cor cinza no cabeçalho e deixar o mesmo em negrito.
Tela 002
Vamos formatar os campos da seguinte maneira:
COD colocarna categoria “número”.
Tela 003
O procedimento para formatação dos demaiscampos é quase a mesma, modificando apenas o formato para cada campo, sendoassim basta seguir a descrição relacionada abaixo:
CURSO, NOME e EMAIL inserir na categoria “texto”.
TELEFONE para categoria “ Especial,Telefone”.
Concluido a criação do banco de dados, iniciaremos acodificação do formulário médicos, insira o código abaixo dentro formulário, no eventoinitialize.
Me.N =Application.WorksheetFunction.CountA(Plan1.Columns(1)) - 1
Tela 004
Vamos codificar os botões, o código será inserido dentrodo evento clic dos mesmos.
BotãoCadastrar:
Dim bd As Database
Dim Rs As Recordset
Set bd =OpenDatabase(ThisWorkbook.Path & "\" & ThisWorkbook.Name,False, False, "excel 8.0")
Set Rs =bd.OpenRecordset("MEDICOS$", dbOpenDynaset)
If Me.Text_cod > Me.NThen
If Me.Text_nome ="" Then
Me.Text_nome.Text ="-"
End If
If Me.Text_area.Text ="" Then
Me.Text_area.Text ="-"
End If
If Me.Text_email.Text ="" Then
Me.Text_email.Text ="-"
End If
If Me.Text_telefone.Text ="" Then
Me.Text_telefone.Text ="-"
End If
Dim CADASTRO(1 To 6)
CADASTRO(1) = UCase(Me.Text_cod)
CADASTRO(2) = UCase(Me.Text_nome)
CADASTRO(3) = UCase(Me.Text_area)
CADASTRO(4) = UCase(Me.Text_telefone)
CADASTRO(5) = UCase(Me.Text_email)
CADASTRO(6) = UCase(Me.Text_cod.Value)
DimConsulta As Object
Dim L, i
Set Consulta = Plan1.Cells(1,1).CurrentRegion
L = Consulta.Rows.Count + 1
If Len(Me.Text_cod) = 0Then
MsgBox"VOCÊ NÃO DIGITOU NENHUM NOME PARA INCLUSÃO", vbCritical,"CADASTRO DE CIDADES E ESTADOS"
Else
For i = 1 To 6
Plan1.Cells(L, i).Value = Trim(CADASTRO(i))
Next i
Me.Text_cod = ""
Me.Text_nome =""
Me.Text_area.Text =""
Me.Text_email.Text= ""
Me.Text_telefone.Text = ""
MsgBox "CADASTRO", vbInformation, "EFETUADOCOM SUCESSO"
ThisWorkbook.Save
End If
Exit Sub
Else
MsgBox"No campo CODIGO digite um número maior do que há no campo registro nobanco para casdastrar."
End If
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:
Tela 005
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("MEDICOS$", dbOpenDynaset)
LIN = 2
Do Until Rs.EOF
If Rs("NOME") =Me.Text_nome.Text Then
Me.Text_cod =Rs.Fields("COD")
Me.Text_nome =Rs.Fields("NOME")
Me.Text_area =Rs.Fields("AREA")
Me.Text_telefone = Rs.Fields("TELEFONE")
Me.Text_email =Rs.Fields("EMAIL")
Me.TextBox_codf.Text = LIN
End If
LIN = LIN + 1
Rs.MoveNext
Loop
Botão Editar:
Dim bd As Database
Dim Rs As Recordset
Set bd =OpenDatabase(ThisWorkbook.Path & "\" & ThisWorkbook.Name,False, False, "excel 8.0")
Set Rs =bd.OpenRecordset("MEDICOS$", dbOpenDynaset)
Rs.Edit
Rs("NOME") = Me.Text_nome
Rs("AREA") =Me.Text_area
Rs("TELEFONE") =Me.Text_telefone
Rs("EMAIL") =Me.Text_email
Rs.Update
MsgBox "DADO ALTERADOS COMSUCESSO", vbInformation, "BANCO DE DADOS"
ThisWorkbook.Save
Botão Apagar:
Dim Consulta
Consulta =MsgBox("DESEJA REALMENTE EXCLUIR OS DADOS?", vbYesNo + vbQuestion,"BANCO DE DADOS")
If Consulta = vbYes Then
Plan1.Cells(Me.TextBox_codf,1).EntireRow.Delete
Me.Text_cod =""
Me.Text_nome =""
Me.Text_area.Text =""
Me.Text_email.Text= ""
Me.Text_telefone.Text =""
MsgBox"DADOS EXCLUÍDO COM SUCESSO."
ThisWorkbook.Save
End If
Botão Voltar:
Me.hide
Para que os códigos funcione,devemos ativar uma biblioteca chamada “Microsoft DAO”, com o editor do visualbasic ativado, clique em ferramentas, referências. Depois encontre e selecionea mesma, abaixo a representação deste procedimento através da tela.
Tela 006
Neste tutorial ensinei a criar o banco de dados,inserindo e definindo as formatações necessárias para cada campo, tambémcodificamos o formulário “médicos”, inserindo os códigos no mesmo, ativando abiblioteca microsoft dao, tudo de formasimples, pratica e objetiva e mostrado através de telas. Na próxima parte do tutorialdaremos continuidade no desenlvovimento do aplicativo. Bons estudos e até apró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-2025 ®
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