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, iremos criar o banco de dados para armazenar os registros, codificaremos o formulário contas a pagar e receber, tudo de formasimples e direta para melhor seu melhor entendimento.
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, Parte3, Parte 4, Parte 5, Parte 6, Parte 7, Parte 8, Parte 9, Parte 10, Parte 11 ,Parte 12, Parte 13 e Parte 14 destetutorial.
Ola! Pessoal, para odesenvolvimento deste banco utilizaremosa Plan6, modifique o nome para a “PAGREC”, depois você deve inserir na primeira linha os nomes dos campos abaixo.
COD, DOC, CONTA, PGTO, VALOR, MULTA, VALORT e MOTIVO.
Tela 001
Insira uma cor cinza, negrito e centralizado, para formarum tipo de cabeçalho, isso na primeira linha de cada coluna onde haver campos.
Tela 002
Fizemos agora algumas alterações nos campos, conforme descrição abaixo.
COD, DOC e CONTA colocar na categoria “número”.
Tela 003
PGTO inserir na categoria“texto”.
Tela 004
VALOR, MULTA e VALORT inserirna categoria Moeda.
Tela 005
MOTIVO inserir na categoria “Geral”
Tela 006
Codificaremos a interfacecontas a pagar e receber, insira ocódigo abaixo no formulário dentro do evento initialize.
Label_n =Application.WorksheetFunction.CountA(Plan6.Columns(1)) – 1
Tela 007
Os próximos códigos a devem ser inseridos dentro do evento clic do botão.
Botão Incluir:
Dim bd As Database
Dim Rs As Recordset
Set bd =OpenDatabase(ThisWorkbook.Path & "\" & ThisWorkbook.Name,False, False, "excel 8.0")
Set Rs =bd.OpenRecordset("PAGREC$", dbOpenDynaset)
If Me.Text_cod >Me.Label_n Then
If Me.Text_doc = "" Then
Me.Text_doc = "-"
End If
If Me.Text_conta = ""Then
Me.Text_conta.Text = "-"
End If
If Me.Text_pgto = "" Then
Me.Text_pgto.Text ="-"
End If
If Me.Text_valor = ""Then
Me.Text_valor.Text ="-"
End If
If Me.Text_multa = "" Then
Me.Text_multa.Text ="-"
End If
If Me.Text_total = ""Then
Me.Text_total.Text ="-"
End If
If Me.Text_motivo = ""Then
Me.Text_motivo.Text ="-"
End If
Dim CADASTRO(1 To 9)
CADASTRO(1) = UCase(Me.Text_cod)
CADASTRO(2) = UCase(Me.Text_doc)
CADASTRO(3) = UCase(Me.Text_conta)
CADASTRO(4) = UCase(Me.Text_pgto)
CADASTRO(5) = UCase(Me.Text_valor)
CADASTRO(6) = UCase(Me.Text_multa)
CADASTRO(7) = UCase(Me.Text_total)
CADASTRO(8) = UCase(Me.Text_motivo)
CADASTRO(9) = UCase(Me.Text_cod.Value)
Dim GERENCIADORAs Object
Dim L, i
Set GERENCIADOR = Plan6.Cells(1,1).CurrentRegion
L = GERENCIADOR.Rows.Count + 1
If Len(Me.Text_cod) = 0 Then
MsgBox "VOCÊ NÃODIGITOU NENHUM NOME PARA INCLUSÃO", vbCritical, "CADASTRO DECLIENTES"
Else
For i = 1 To 9
Plan6.Cells(L, i).Value = Trim(CADASTRO(i))
Next i
Me.Text_cod.Text = ""
Me.Text_doc.Text = ""
Me.Text_conta.Text =""
Me.Text_pgto.Text =""
Me.Text_valor.Text = ""
Me.Text_multa.Text =""
Me.Text_total.Text =""
Me.Text_motivo.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("PAGREC$", dbOpenDynaset)
LIN = 2
Do Until Rs.EOF
If Rs("DOC") =Me.Text_doc.Text Then
Me.Text_cod =Rs.Fields("COD")
Me.Text_conta = Rs.Fields("CONTA")
Me.Text_pgto =Rs.Fields("PGTO")
Me.Text_valor = Rs.Fields("VALOR")
Me.Text_multa =Rs.Fields("MULTA")
Me.Text_total =Rs.Fields("VALORT")
Me.Text_motivo = Rs.Fields("MOTIVO")
Me.TextBox_codf.Text = LIN
End If
LIN = LIN + 1
Rs.MoveNext
Loop
BotãoEditar:
Dim CADASTRO(2 To 9)
CADASTRO(2) = UCase(Me.Text_doc)
CADASTRO(3) = UCase(Me.Text_conta)
CADASTRO(4) = UCase(Me.Text_pgto)
CADASTRO(5) = UCase(Me.Text_valor)
CADASTRO(6) = UCase(Me.Text_multa)
CADASTRO(7) = UCase(Me.Text_total)
CADASTRO(8) = UCase(Me.Text_motivo)
CADASTRO(9) = UCase(Me.TextBox_codf.Value)
For i = 2 To 9
Plan6.Cells(Val(Me.Text_cod) + 1,i).Value = Trim(CADASTRO(i))
Next i
MsgBox"ALTERAÇÃO EFETUADA", vbInformation, "DOS DADOS"
Botão Excluir:
Dim GERENCIADOR
GERENCIADOR =MsgBox("DESEJA REALMENTE EXCLUIR?", vbYesNo + vbQuestion, "BANCODE DADOS")
If GERENCIADOR = vbYes Then
Plan6.Cells(Me.TextBox_codf,1).EntireRow.Delete
Me.Text_cod.Text = ""
Me.Text_doc.Text = ""
Me.Text_conta.Text =""
Me.Text_pgto.Text = ""
Me.Text_valor.Text =""
Me.Text_multa.Text =""
Me.Text_total.Text =""
Me.Text_motivo.Text =""
MsgBox "REGISTROS EXCLUÍDOCOM SUCESSO."
ThisWorkbook.Save
End If
Botão Voltar:
Me.hide
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:
Nesta parte criarmos o banco de dados para armazenar registros, você fez as formatações necessárias nos campos e a codificação da interface “CONTASA PAGAR E RECEBER”, tudo de forma simples e objetiva, na próxima parte do tutorialdaremos continuidade no desenlvovimento do sistema. 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-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