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
FILTRO DE TUTORIAIS:
Objetivo:
O objetivo deste tutorial é de ensinar a criar o banco de dados que serão dois e a codificar o aplicativo, vamos aprender a desenvolver de uma forma bem objetiva.
Pré-requisito:
Para você poder acompanhar o desenvolvimento deste tutorial, será necessário ter conhecimento no mínimo do “Curso Básico de Excel e os Tutoriais Utilizando Editor do Visual Basic do Excel Parte 1 e Parte2 e Parte1 e Parte 2 do Tutorial Controle de Fax”.
Vamos começar a desenvolver o banco de dados, serão desenvolver dois banco de dados na mesma planilha que você esta desenvolvendo o projeto, iremos utilizar a plan2 para ser o banco de dados de fax enviados e a plan3 para fax recebidos, vou mostrar como deve ficar o banco de fax enviados, sendo que o banco de fax recebidos você deve seguir os mesmos procedimentos.
Vamos utilizar os seguintes campos: COD, DATA, HORA, DE, FAX, PARA, FAXA, ASSUNTO.
Vamos também formatar suas células para que as mesmas só recebam registros de forma correta, ou seja, o campo onde inserir data só receba data e assim por diante.
Abra o seu projeto, ou seja, a planilha onde esteja desenvolvendo o projeto e coloque os campos definidos acima dentro da plan2.
Tela 001
Feito esta etapa vamos colocar uma cor nesta linha toda que possui os campos, isso serve para que o mesmo seja identificado como cabeçalho.
Tela 002
Agora vamos formatar os campos da seguinte maneira:
Clique com o botão direito mouse sobre o campo COD, bem em cima da letra A, isso vai fazer com que toda a coluna fique selecionada e depois clique em formatar células.veja o procedimento abaixo:
Tela 003
Após clicar vai ser aberta uma janela de formatação de células onde estará selecionada a opção geral, que neste campo COD vamos deixar a mesma, apenas clique em ok.
Tela 004
Campo Data, siga o mesmo procedimento ensinado para abrir a janela de formatação de células e depois selecione a opção data e formato dia, mês e ano.
Tela 005
Campo HORA, faça o mesmo procedimento selecionando a opção hora e a opção de formatação hora e minutos.
Tela 006
Os campos DE, PARA e ASSUNTO siga o mesmo procedimento selecionando a opção texto.
Tela 007
E por último o campo FAX e FAXA neste seleciona a opção especial e depois telefone com formatação de , uma explicação a diferença entre este campos é só o nome porque os dois campos tem a mesma função.
Tela 008
Concluímos o banco de dados de fax enviados sendo que para a criação do banco de fax recebidos apenas copie este que acabamos de criar e cole na plan3.
Agora vamos inserir os códigos no aplicativo, mas antes vamos aprender a ativar uma biblioteca chamada Microsoft DAO 3.6 esta versão pode mudar dependendo do tipo de Windows que você possui em sua máquina.
Para isso com a janela de código ativa clique em referência vai ser aberta uma janela onde você deve selecionar a biblioteca.
Tela 009
Tela 010
Vamos codificar o formulário de fax enviados.
Dentro do botão receber insira o seguinte código:
Form_Recebidos.Show
Dentro do botão cadastrar:
Dim BD As Database
Dim rs As Recordset
Set BD = OpenDatabase("C:\Meus documentos\APLICATIVOS PARA VENDA\CONTROLE FAX.xls", False, False, "excel 8.0")
Set rs = BD.OpenRecordset("plan2$", dbOpenDynaset)
If Me.TextBox3 > Me.Label11 Then
Dim CADASTRO(1 To 8)
CADASTRO(1) = UCase(Me.TextBox3)
CADASTRO(2) = UCase(Me.TextBox1)
CADASTRO(3) = LCase(Me.TextBox2)
CADASTRO(4) = UCase(Me.TextBox4)
CADASTRO(5) = UCase(Me.TextBox5)
CADASTRO(6) = UCase(Me.TextBox6)
CADASTRO(7) = UCase(Me.TextBox7)
CADASTRO(8) = UCase(Me.TextBox8)
CADASTRO(8) = UCase(Me.TextBox3.Value)
Dim fax As Object
Dim L, I
Set fax = Plan2.Cells(1, 1).CurrentRegion
L = fax.Rows.Count + 1
If Len(Me.TextBox3) = 0 Then
MsgBox "VOCÊ NÃO DIGITOU NOME EM NENHUM DOS CAMPOS PARA INCLUSÃO", vbCritical, "CADASTRO DE ENDEREÇOS"
Else
For I = 1 To 8
Plan2.Cells(L, I).Value = Trim(CADASTRO(I))
Next I
MsgBox "CADASTRADO", vbInformation, "EFETUADO COM SUCESSO"
ThisWorkbook.Save
End If
Exit Sub
Else
MsgBox "No campo CODIGO digite um número maior do que há no campo REGISTRO para efetuar o cadastro."
End If
Botão pesquisar:
Dim DB As Database
Dim rs As Recordset
Set BD = OpenDatabase("C:\Meus documentos\APLICATIVOS PARA VENDA\CONTROLE FAX.xls", False, False, "excel 8.0")
Set rs = BD.OpenRecordset("plan2$", dbOpenDynaset)
rs.FindFirst "DE LIKE'" & Me.TextBox4 & "'"
'3º se não tiver o registro na tabela termina pesquisa
If rs.NoMatch = True Then MsgBox "Nome não cadastrado", vbInformation, "Banco de dados": Exit Sub
'4º se localizar pesquisa preenche os campos
Me.Text_COD = rs.Fields("COD")
Me.TextBox1 = rs.Fields("DATA")
Me.TextBox2 = rs.Fields("HORA")
Me.TextBox4 = rs.Fields("DE")
Me.TextBox5 = rs.Fields("FAX")
Me.TextBox6 = rs.Fields(" PARA")
Me.TextBox7 = rs.Fields("FAXA")
Me.TextBox8 = rs.Fields("ASSUNTO")
Botão Apagar:
Dim fax
fax = MsgBox("DESEJA REALMENTE EXCLUIR O REGISTRO", vbYesNo + vbQuestion, "CADASTRO DE ENDEREÇOS")
If fax = vbYes Then
Plan2.Cells(Val(Me.Text_COD) + 1, 1).EntireRow.Delete
ThisWorkbook.Save
End If
Botão editar:
Dim CADASTRO(1 To 8)
CADASTRO(1) = UCase(Me.TextBox3)
CADASTRO(2) = UCase(Me.TextBox1)
CADASTRO(3) = LCase(Me.TextBox2)
CADASTRO(4) = UCase(Me.TextBox4)
CADASTRO(5) = UCase(Me.TextBox5)
CADASTRO(6) = UCase(Me.TextBox6)
CADASTRO(7) = UCase(Me.TextBox7)
CADASTRO(8) = UCase(Me.TextBox8)
CADASTRO(8) = UCase(Me.TextBox3.Value)
For I = 1 To 8
Plan2.Cells(Val(Me.TextBox3) + 1, I).Value = Trim(CADASTRO(I))
Next I
MsgBox "ALTERAÇÃO EFETUADA", vbInformation, "CADASTRO DE ENDEREÇOS"
ThisWorkbook.Save
Botão apagar:
Form_Enviados.Hide
Dentro do formulário coloque o seguinte código, sendo que o mesmo deve ficar no initialize do mesmo.
Label11 = Application.WorksheetFunction.CountA(Plan2.Columns(1)) - 1
Label13 = Application.WorksheetFunction.CountA(Plan3.Columns(1)) - 1
Label24 = Application.WorksheetFunction.CountA(Plan2.Columns(1)) - 1
Label26 = Application.WorksheetFunction.CountA(Plan3.Columns(1)) - 1
Me.TextBox1 = Format(Date, "DD/MM/YY")
Me.TextBox2 = Format(Time, "H:MM")
Terminamos de codificar o primeiro formulário agora partiremos para o segundo que é de fax recebidos:
Dentro do formulário também no initialize.
Label11 = Application.WorksheetFunction.CountA(Plan2.Columns(1)) - 1
Label13 = Application.WorksheetFunction.CountA(Plan3.Columns(1)) - 1
Label24 = Application.WorksheetFunction.CountA(Plan2.Columns(1)) - 1
Label26 = Application.WorksheetFunction.CountA(Plan3.Columns(1)) - 1
Me.TextBox1 = Format(Date, "DD/MM/YY")
Me.TextBox2 = Format(Time, "H:MM")
Dentro do botão cadastrar:
Dim BD As Database
Dim rs As Recordset
Set BD = OpenDatabase("C:\Meus documentos\APLICATIVOS PARA VENDA\CONTROLE FAX.xls", False, False, "excel 8.0")
Set rs = BD.OpenRecordset("plan3$", dbOpenDynaset)
If Me.TextBox3 > Me.Label11 Then
Dim CADASTRO(1 To 8)
CADASTRO(1) = UCase(Me.TextBox3)
CADASTRO(2) = UCase(Me.TextBox1)
CADASTRO(3) = LCase(Me.TextBox2)
CADASTRO(4) = UCase(Me.TextBox4)
CADASTRO(5) = UCase(Me.TextBox5)
CADASTRO(6) = UCase(Me.TextBox6)
CADASTRO(7) = UCase(Me.TextBox7)
CADASTRO(8) = UCase(Me.TextBox8)
CADASTRO(8) = UCase(Me.TextBox3.Value)
Dim fax As Object
Dim L, I
Set fax = Plan3.Cells(1, 1).CurrentRegion
L = fax.Rows.Count + 1
If Len(Me.TextBox3) = 0 Then
MsgBox "VOCÊ NÃO DIGITOU NOME EM NENHUM DOS CAMPOS PARA INCLUSÃO", vbCritical, "CADASTRO DE ENDEREÇOS"
Else
For I = 1 To 8
Plan3.Cells(L, I).Value = Trim(CADASTRO(I))
Next I
MsgBox "CADASTRADO", vbInformation, "EFETUADO COM SUCESSO"
ThisWorkbook.Save
End If
Exit Sub
Else
MsgBox "No campo CODIGO digite um número maior do que há no campo REGISTRO para efetuar o cadastro."
End If
Dentro do botão pesquisar.
Dim DB As Database
Dim rs As Recordset
Set BD = OpenDatabase("C:\Documents and Settings\infohelp\Meus documentos\Pasta Meu Documentos\APLICATIVOS PARA VENDA\CONTROLE FAX.xls", False, False, "excel 8.0")
Set rs = BD.OpenRecordset("plan3$", dbOpenDynaset)
rs.FindFirst "DE LIKE'" & Me.TextBox4 & "'"
If rs.NoMatch = True Then MsgBox "Nome não cadastrado", vbInformation, "Banco de dados": Exit Sub
Me.Text_COD = rs.Fields("COD")
Me.TextBox1 = rs.Fields("DATA")
Me.TextBox2 = rs.Fields("HORA")
Me.TextBox4 = rs.Fields("DE")
Me.TextBox5 = rs.Fields("FAX")
Me.TextBox6 = rs.Fields(" PARA")
Me.TextBox7 = rs.Fields("FAXA")
Me.TextBox8 = rs.Fields("ASSUNTO")
Dentro do botão apagar:
Dim fax
fax = MsgBox("DESEJA REALMENTE EXCLUIR O REGISTRO", vbYesNo + vbQuestion, "CADASTRO DE ENDEREÇOS")
If fax = vbYes Then
Plan3.Cells(Val(Me.Text_COD) + 1, 1).EntireRow.Delete
ThisWorkbook.Save
End If
Dentro do botão editar:
Dim CADASTRO(1 To 8)
CADASTRO(1) = UCase(Me.TextBox3)
CADASTRO(2) = UCase(Me.TextBox1)
CADASTRO(3) = LCase(Me.TextBox2)
CADASTRO(4) = UCase(Me.TextBox4)
CADASTRO(5) = UCase(Me.TextBox5)
CADASTRO(6) = UCase(Me.TextBox6)
CADASTRO(7) = UCase(Me.TextBox7)
CADASTRO(8) = UCase(Me.TextBox8)
CADASTRO(8) = UCase(Me.TextBox3.Value)
For I = 1 To 8
Plan3.Cells(Val(Me.TextBox3) + 1, I).Value = Trim(CADASTRO(I))
Next I
MsgBox "ALTERAÇÃO EFETUADA", vbInformation, "CADASTRO DE ENDEREÇOS"
ThisWorkbook.Save
Dentro do botao voltar:
Form_Recebidos.Hide
Dentro do botão fechar:
Form_Recebidos.Hide
Terminamos de criar o aplicativo de controle de fax, nesta parte ensinei a criar o banco de dados, a ativar a biblioteca Microsoft DAO e a inserir os códigos nos respectivos formulários e botões, o próximo aplicativo a ser desenvolvido será para uma academia. Bons estudos e até a próxima parte.
Confira todas as partes deste tutorial:
CURSO PROFISSIONALIZANTE DE INFORMÁTICA |
São 68 Cursos -
3440 Vídeo Aulas - 396:07 horas |
Domine Todos os Recursos de Informática Exigidos pelo Mercado de Trabalho, Através de Exemplos Práticos, Completos e Úteis, Detalhadamente Explicados - Passo a Passo |
Para Todos os Detalhes, Acesse:
https://juliobattisti.com.br/informatica-curso-completo-1v.asp |
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