Ir ao conteúdo
  • Cadastre-se

Erro em tempo de execução '424': O Objeto é obrigatório


Ir à solução Resolvido por Leo P Costa,

Posts recomendados

Boa noite. Estou com um codigo de um formulario, sempre que vou rodar ele gera um erro de tempo de execução 424, segue codigo. Mas ele não mostra onde está o erro.

Private Linha As IntegerPublic GravarAlterar As IntegerPrivate Sub Atualiza_Form()    Cells(Linha, 1).Activate    Txt_Cartao.Value = Cells(Linha, 1)    Txt_Data.Value = Cells(Linha, 2)    Txt_Descricao.Value = Cells(Linha, 3)    Txt_Valor.Value = Cells(Linha, 4)    Txt_Pgnt.Value = Cells(Linha, 5)    Txt_Quantidade.Value = Cells(Linha, 6)End SubPrivate Sub Cmd_Alterar_Click()If Txt_Cartao.Value = "" ThenMsgBox "Selecione o registro", vbCritical, "Erro"ElseGravarAlterar = 2Frame1.Enabled = TrueCmd_Anterior.Enabled = FalseCmd_Proximo.Enabled = FalseCmd_Incluir.Enabled = FalseCmd_Alterar.Enabled = FalseCmd_Gravar.Enabled = TrueCmd_Cancelar.Enabled = TrueCmd_Excluir.Enabled = FalseEnd IfEnd SubPrivate Sub Cmd_Anterior_Click()Linha = ActiveCell.RowIf Linha < 6 ThenLinha = Linha - 1Atualiza_FormElseAtualiza_FormMsgBox "Primeiro Registro", vbInformation, "Planilha de Despesas"End IfEnd SubPrivate Sub Cmd_Cancelar_Click()Call UserForm_InitializeEnd SubPrivate Sub Cmd_Excluir_Click()Dim del As StringIf ActiveCell.Value = "" ThenMsgBox "Selecione um registro para exclusão", vbCritical, "Erro de Operação"ElseIf ActiveCell.Value <> "" Thendel = (MsgBox("Deseja excluir o registro ativo?" & Me.Txt_Cartao & " " & _Me.Txt_Descricao, vbYesNo + vbQuestion, "Exclusão de Dados"))If del = vbYes ThenActiveCell.EntireRow.DeleteLinha = Linha - 1Call UserForm_InitializeElseMsgBox "Operação cancelada", vbInformation, "Planilha de Despesas"Call UserForm_InitializeEnd IfEnd IfEnd SubPrivate Sub Cmd_Gravar_Click()Select Case GravarAlterarCase Is = 1    If Txt_Cartao.Value = "" Then        MsgBox "Obrigatório preencher campo Cartão", vbCritical, "Erro"    ElseIf Txt_Data.Value = "" Then        MsgBox "Obrigatório preencher campo Data", vbCritical, "Erro"    ElseIf Txt_Descricao.Value = "" Then        MsgBox "Obrigatório preencher campo Descrição", vbCritical, "Erro"    ElseIf Txt_Valor.Value = "" Then        MsgBox "Obrigatório preencher campo Valor", vbCritical, "Erro"    ElseIf Txt_Quantidade.Value = "" Then        MsgBox "Obrigatório preencher campo Quantidade", vbCritical, "Erro"    ElseIf Cbo_Mes.Value = "" Then        MsgBox "Obrigatório preencher campo Mês", vbCritical, "Erro"    Else        While ActiveCell.Value <> ""        ActiveCell.Offset(1, 0).Select        Wend        Linha = ActiveCell.Row        Cells(Linha, 1) = Txt_Cartao.Value        Cells(Linha, 2) = Txt_Data.Value        Cells(Linha, 3) = Txt_Descricao.Value        Cells(Linha, 4) = Txt_Valor.Value        Cells(Linha, 6) = Txt_Quantidade.Value                UserForm_Initialize    End If    Case Is = 2        Cells(Linha, 1) = Txt_Cartao.Value        Cells(Linha, 2) = Txt_Data.Value        Cells(Linha, 3) = Txt_Descricao.Value        Cells(Linha, 4) = Txt_Valor.Value        Cells(Linha, 5) = Txt_Pgnt.Value        Cells(Linha, 6) = Txt_Quantidade.Value                UserForm_Initialize        MsgBox "Dados alterados com sucesso", vbInformation, "Planilha de Despesas"        End SelectEnd SubPrivate Sub Cmd_Incluir_Click()GravarAlterar = 1Me.Txt_Cartao.Value = ""Me.Txt_Data.Value = ""Me.Txt_Descricao.Value = ""Me.Txt_Valor.Value = ""Me.Txt_Pgnt.Value = ""Me.Txt_Quantidade.Value = ""Me.Cbo_Mes.Value = ""Frame1.Enabled = TrueFrame2.Enabled = TrueMe.Txt_Cartao.SetFocusCmd_Anterior.Enabled = FalseCmd_Proximo.Enabled = FalseCmd_Incluir.Enabled = FalseCmd_Alterar.Enabled = FalseCmd_Gravar.Enabled = TrueCmd_Cancelar.Enabled = TrueCmd_Excluir.Enabled = FalseEnd SubPrivate Sub Cmd_Proximo_Click()Linha = ActiveCell.RowIf Cells(Linha + 1, 1).Value <> "" ThenLinha = Linha + 1Atualiza_FormElseAtualiza_FormMsgBox "Último Registro", vbInformation, "Planilha de Despesas"End IfEnd SubPrivate Sub Cmd_Sair_Click()Dim sairsair = (MsgBox("Deseja fechar o cadastro de despesas de Janeiro?", vbYesNo + vbQuestion, "Planilha de Despesas"))If sair = vbYes ThenActiveWorkbook.SaveUnload MeFrm_Menu.ShowEnd IfEnd SubPrivate Sub UserForm_Initialize()Sheets("JANEIRO").SelectRange("A6").SelectTxt_Cartao.Value = ""Txt_Data.Value = ""Txt_Descricao.Value = ""Txt_Valor.Value = ""Txt_Pgnt.Value = ""Txt_Quantidade.Value = ""Frame1.Enabled = FalseFrame2.Enabled = TrueCmd_Anterior.Enabled = TrueCmd_Proximo.Enabled = TrueCmd_Incluir.Enabled = TrueCmd_Alterar.Enabled = TrueCmd_Gravar.Enabled = FalseCmd_Cancelar.Enabled = FalseCmd_Excluir.Enabled = TrueCbo_Mes.ClearWith Me.Cbo_Mes    .AddItem "Janeiro"    .AddItem "Fevereiro"    .AddItem "Março"    .AddItem "Abril"    .AddItem "Maio"    .AddItem "Junho"    .AddItem "Julho"    .AddItem "Agosto"    .AddItem "Setembro"    .AddItem "Outubro"    .AddItem "Novembro"    .AddItem "Dezembro"End WithWorksheets("JANEIRO").SelectRange("A6").SelectWhile ActiveCell.Value <> ""ActiveCell.Offset(1, 0).SelectWendDados = ActiveCell.RowLst_DespesaJaneiro.RowSource = Range(Cells(6, 1), Cells(Dados, 6)).AddressEnd SubPrivate Sub Cbo_Mes_Change()    If Cbo_Mes = "Fevereiro" Then        Unload Me        Frm_Fevereiro.Show    End If    End SubPrivate Sub Txt_Data_Change()If Txt_Data.TextLength = 2 Or Txt_Data.TextLength = 5 Then    Txt_Data.Text = Txt_Data.Text + "/"End If    End SubPrivate Sub Txt_Parcela_Change()If Txt_Parcela.TextLength = 2 Then    Txt_Parcela.Text = Txt_Parcela.Text + "/"End IfEnd SubPrivate Sub Txt_Pgnt_Exit(ByVal Cancel As MSForms.ReturnBoolean)    Txt_Pgnt = Format(Txt_Pgnt, "R$ #,##0.00")    End SubPrivate Sub Txt_Valor_Exit(ByVal Cancel As MSForms.ReturnBoolean)    Txt_Valor = Format(Txt_Valor, "R$ #,##0.00")    End Sub
Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...