Inquiridor
VBA Excel, Planilha de membro

Pergunta
-
Olá, pessoal, preciso de uma ajuda urgente, sou meia leiga no VBA ainda rs.
e estou com um problema:
Fiz uma planilha de cadastro de membro da minha igreja, tudo certo, até a hora de executar.
Quando executo o programa e escrevo todos os dado, na hora de aperta o botão gravar, grava somente até a 3 linha no caso até o endereço e ai aparece um erro em tempo de execução 424: O Objeto é obrigatório . e ai aparece a opção depurar e Quando clico em depurar aparece o comando do nascimento sublinhado de amarelo, só que ele esta como todos os outros que esta certo.
Não sei o que acontece alguem pode me ajudar
Codigo usado:
Private Sub cboCidade_Change()
End Sub
Private Sub UserForm_Initialize()
cboCargo.AddItem "Pastor(a)"
cboCargo.AddItem "Presbitero"
cboCargo.AddItem "Missonario(a)"
cboCargo.AddItem "Obreiro(a)"
cboCargo.AddItem "Membro"
cboCargo.AddItem "Visitante"
cboCargo.AddItem "Cooperador(a)"
End Sub
Private Sub cboCargo_Change()
End Sub
Private Sub cmdExcluir_Click()
'Declarar a variável Resp para receber uma resposta
Dim Resp As Integer
'Fazer a busca do registro digitado pelo usuário
With Worksheets("Dados Clientes").Range("A:A")
Set c = .Find(txtCPF.Value, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
Resp = MsgBox("Tem certeza que deseja excluir o registro?", vbYesNo, "Confirmação")
If Resp = vbYes Then
c.Select
Selection.EntireRow.Delete
'Limpar as caixas de texto
txtCPF.Value = Empty
txtNome.Value = Empty
txtEndereco.Value = Empty
txtNascimento.Value = Empty
txtGenêros.Value = Empty
cboCargo.Value = Empty
txtCelular.Value = Empty
txtTelefone.Value = Empty
txtEmail.Value = Empty
txtBatismo.Value = Empty
OptionButton1.Value = False
OptionButton2.Value = False
'Colocar o foco na primeira caixa de texto
txtCPF.SetFocus
Else
MsgBox "O registro não será excluído!"
End If
Else
MsgBox "Membro não encontrado!"
End If
End With
Exit Sub
End Sub
Private Sub cmdFechar_Click()
Dados.Hide
End Sub
Private Sub cmdGravar_Click()
'Ativar a primeira planilha
ThisWorkbook.Worksheets("Dados Clientes").Activate
'Selecionar a célula A3
Range("A3").Select
'Procurar a primeira célula vazia
Do
If Not (IsEmpty(ActiveCell)) Then
ActiveCell.Offset(1, 0).Select
End If
Loop Until IsEmpty(ActiveCell) = True
'Carregar os dados digitados nas caixas de texto para a planilha
ActiveCell.Value = txtCPF.Value
ActiveCell.Offset(0, 1).Value = txtNome.Value
ActiveCell.Offset(0, 2).Value = txtEndereco.Value
ActiveCell.Offset(0, 3).Value = txtNascimento.Value
ActiveCell.Offset(0, 4).Value = txtGenêros.Value
ActiveCell.Offset(0, 5).Value = cboCargo.Value
ActiveCell.Offset(0, 6).Value = txtCelular.Value
ActiveCell.Offset(0, 7).Value = txtTelefone.Value
ActiveCell.Offset(0, 8).Value = txtEmail.Value
ActiveCell.Offset(0, 9).Value = txtBatismo.Value
'Carregar o Genêro do cliente dos botões de opção
If OptionButton1.Value = True Then
ActiveCell.Offset(0, 4).Value = "Masculino"
Else
ActiveCell.Offset(0, 4).Value = "Feminino"
End If
'Limpar as caixas de texto
txtCPF.Value = Empty
txtNome.Value = Empty
txtEndereco.Value = Empty
txtGenêros.Value = Empty
cboCargo.Value = Empty
txtCelular.Value = Empty
txtEndereco.Value = Empty
'Limpar as caixas de combinação
cboCargo.Value = Empty
txtTelefone.Value = Empty
txtEmail.Value = Empty
txtNascimento.Value = Empty
'Limpar os botões CheckBox e OptionButton
OptionButton1.Value = False
OptionButton2.Value = False
'Colocar o foco na primeira caixa de texto
txtCPF.SetFocus
End Sub
Private Sub cmdPesquisar_Click()
'Verificar se foi digitado um nome na primeira caixa de texto
If txtCPF.Text = "" Then
MsgBox "Digite o CPF de um Membro"
txtCPF.SetFocus
GoTo Linha1
End If
With Worksheets("Dados Clientes").Range("A:A")
Set c = .Find(txtCPF.Value, LookIn:=xlValues, LookAt:=xlPart)
If Not c Is Nothing Then
c.Activate
txtCPF.Value = c.Value
txtNome.Value = c.Offset(0, 1).Value
txtEndereco.Value = c.Offset(0, 2).Value
txtNascimento.Value = c.Offset(0, 3).Value
txtGenêros.Value = c.Offset(0, 4).Value
cboCargo.Value = c.Offset(0, 5).Value
txtCelular.Value = c.Offset(0, 6).Value
txtTelefone.Value = c.Offset(0, 7).Value
txtEmail.Value = c.Offset(0, 8).Value
txtBatismo.Value = c.Offset(0, 9).Value
'Carregando o botão de opção
If c.Offset(0, 4) = "Masculino" Then
OptionButton1.Value = True
Else
OptionButton2.Value = True
End If
Else
MsgBox "Membro não encontrado!"
End If
End With
Linha1:
End Sub
Private Sub Label3_Click()
End Sub
Private Sub Label5_Click()
End Sub
Private Sub Label9_Click()
End Sub
Private Sub txtCPF_Change()
End Sub
Private Sub UserForm_Click()
End Sub
- Editado Mayara Magna sexta-feira, 24 de janeiro de 2014 16:49
Todas as Respostas
-
Bem vinda ao fórum.
Ao inserir um código no fórum, utilize blocos de código. Para utilizar essa ferramenta, clique no botão cuja legenda é “Inserir bloco de código” na barra do editor de mensagens do fórum. Uma janela aparecerá onde você deverá colar seu código cru na caixa de texto à esquerda. Então, selecione a opção Vb.Net na caixa de combinação que você verá em cima à esquerda e depois clique no botão Inserir.
---
Sobre a sua pergunta, em qual das três linhas de código da data de nascimento dá erro?
Felipe Costa Gualberto - http://www.ambienteoffice.com.br