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, criaremos um bancode dados para armazenar os registros e tambémcodificaremos a interface protocolo, tudo de forma 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 e Parte 4 deste tutorial.
Ola! Pessoal, o desenvolvimentoo banco de dados é bem simples utilizaremos a Plan3, modifique o nome para a “PROTOCOLO”, insira na primeira linha da planilha os nomes doscampos abaixo:
COD, DESTINATARIO, ENDERECO, DESCRIMINACAO, RECEBIMENTO, RECEBEU e ENVIO.
Tela 001
Agora, você deve inserir na primeira linha do banco dedados, cor cinza, negrito e centralizado.
Tela 002
Vamos fazer alterações nas propriedades dos objetos conforme descrição abaixo.
COD colocar na categoria “Geral”.
Tela 003
DESTINATARIO, ENDERECO, DESCRIMINACAOe RECEBEU inserir na categoria “texto”.
Tela 004
RECEBIMENTO e ENVIO inserir na categoriadata”.
Tela 005
Codificaremos a interface protocolo,insira o código abaixo no formulário dentro do evento initialize.
Label_n =Application.WorksheetFunction.CountA(Plan3.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("PROTOCOLO$", dbOpenDynaset)
If Me.TextBox_cod >Me.Label_n Then
If Me.TextBox_destinatario ="" Then
Me.TextBox_destinatario = "-"
End If
If Me.TextBox_endereco ="" Then
Me.TextBox_endereco ="-"
End If
If Me.TextBox_descriminacao ="" Then
Me.TextBox_descriminacao.Text ="-"
End If
If Me.TextBox_datarec ="" Then
Me.TextBox_datarec.Text ="-"
End If
If Me.TextBox_nomerecebeu ="" Then
Me.TextBox_nomerecebeu.Text ="-"
End If
If Me.TextBox_dataenvio ="" Then
Me.TextBox_dataenvio.Text ="-"
End If
Dim CADASTRO(1 To 8)
CADASTRO(1) =UCase(Me.TextBox_cod)
CADASTRO(2) = UCase(Me.TextBox_destinatario)
CADASTRO(3) = UCase(Me.TextBox_endereco)
CADASTRO(4) = UCase(Me.TextBox_descriminacao)
CADASTRO(5) = UCase(Me.TextBox_datarec)
CADASTRO(6) = UCase(Me.TextBox_nomerecebeu)
CADASTRO(7) = UCase(Me.TextBox_dataenvio)
CADASTRO(8) = UCase(Me.TextBox_cod.Value)
Dim GERENCIADORAs Object
Dim L, i
Set GERENCIADOR = Plan3.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 DO PROTOCOLO"
Else
For i = 1 To 8
Plan3.Cells(L, i).Value = Trim(CADASTRO(i))
Next i
Me.TextBox_destinatario = ""
Me.TextBox_endereco = ""
Me.TextBox_descriminacao.Text = ""
Me.TextBox_datarec.Text = ""
Me.TextBox_nomerecebeu.Text = ""
Me.TextBox_dataenvio.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("PROTOCOLO$", dbOpenDynaset)
LIN = 2
Do Until Rs.EOF
IfRs("DESTINATARIO") = Me.TextBox_destinatario.Text Then
Me.TextBox_cod =Rs.Fields("COD")
Me.TextBox_endereco = Rs.Fields("ENDERECO")
Me.TextBox_descriminacao =Rs.Fields("DESCRIMINACAO")
Me.TextBox_datarec = Rs.Fields("RECEBIMENTO")
Me.TextBox_nomerecebeu = Rs.Fields("RECEBEU")
Me.TextBox_dataenvio = Rs.Fields("ENVIO")
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("PROTOCOLO$", dbOpenDynaset)
Rs.Edit
Rs("DESTINATARIO") = Me.TextBox_destinatario
Rs("ENDERECO") = Me.TextBox_endereco
Rs("DESCRIMINACAO") = Me.TextBox_descriminacao
Rs("RECEBIMENTO") = Me.TextBox_datarec
Rs("RECEBEU") = Me.TextBox_nomerecebeu
Rs("ENVIO") = Me.TextBox_dataenvio
Rs.Update
MsgBox"DADOS ALTERADOS COM SUCESSO", vbInformation, "BANCO DEDADOS"
ThisWorkbook.Save
Botão Excuir:
Dim VT
VT =MsgBox("DESEJA REALMENTE EXCLUIR O CLIENTE?", vbYesNo + vbQuestion,"BANCO DE DADOS")
If VT = vbYes Then
Plan3.Cells(Me.TextBox_codf,1).EntireRow.Delete
Me.TextBox_cod.Text =""
Me.TextBox_destinatario = ""
Me.TextBox_endereco = ""
Me.TextBox_descriminacao.Text = ""
Me.TextBox_datarec.Text = ""
Me.TextBox_nomerecebeu.Text = ""
Me.TextBox_dataenvio.Text = ""
MsgBox"REGISTROS EXCLUÍDO COM SUCESSO."
ThisWorkbook.Save
End If
Botão Voltar:
Me.hide
Nesta parte criarmos o banco de dados para fazer o armazenamentodos registros e a codificação da interface “Protocolo”, tudo de forma simples eobjetiva, na próxima parte do tutorial daremos continuidade no desenlvovimentodo sistema. Bons estudos e até 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-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