MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Erro em tempo de execução 3420 - objeto nao é valido ou nao esta definido.

    Compartilhe

    ifahidalgo
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 317
    Registrado : 13/10/2011

    [Resolvido]Erro em tempo de execução 3420 - objeto nao é valido ou nao esta definido.

    Mensagem  ifahidalgo em Qui 28 Jan 2016, 17:11

    Em um evento ao clicar no botão salvar apresenta erro na linha do While e não consigo ver o erro.


    Dim strSql5 As String, rstVerifica As DAO.Recordset
    Dim strSql4 As String, rstImped As DAO.Recordset

    strSql4 = "Select * From tblimpedimento WHERE coduser = int(val('" & Me.txtcoduser & "'))"
    Set rstImped = CurrentDb.OpenRecordset(strSql4, dbOpenSnapshot)

    If Not rstImped.EOF Then
    rstImped.MoveFirst
    xid = " "
    xresultado = 0
    Do While Not rstImped.EOF
    xid = rstImped("idfuncional")
    xdatainicio = txtdatainicio
    xdatafim = txtdatatermino
    strSql5 = "Select * From tblFerias WHERE idfuncional = '" & xvid & "' and anoreferencia = int(val('" & txtanoref & "')) and mes = '" & cmbmesref & "' AND status <> 'QUITADO' and datainicial >= cdate('" & xdatainicio & "') and datainicial <= cdate('" & xdatafim & "')" 'and datafinal cdate('" & xdatainicio & "') and cdate('" & xdatafim & "')"
    Set rstVerifica = CurrentDb.OpenRecordset(strSql5, dbOpenSnapshot)
    If Not rstVerifica.EOF Then
    xresultado = xresultado + 1
    End If
    rstImped.MoveNext
    If rstImped.EOF Then
    rstImped.Close
    rstVerifica.Close
    End If
    Loop
    End If
    Set rstImped = Nothing
    Set rstVerifica = Nothing

    If xresultado = 0 Then
    Call UltimoReg
    strSql = "Select * from tblFerias where idferias = int(val('" & txtidferias & "'))"
    Set rstTemp = CurrentDb.OpenRecordset(strSql, dbOpenDynaset)
    rstTemp.AddNew
    rstTemp("coduser") = txtcoduser
    rstTemp("idfuncional") = txtidfuncional
    rstTemp("anoreferencia") = txtanoref
    rstTemp("mes") = cmbmesref
    rstTemp("datainicial") = txtdatainicio
    rstTemp("datafinal") = txtdatatermino
    rstTemp("datasolicitacao") = Now()
    rstTemp("status") = "PENDENTE"
    rstTemp.Update
    rstTemp.Close
    Set rstTemp = Nothing
    MsgBox "Informações salvas com sucesso.", vbOKOnly + vbInformation, "Atenção!"
    Call LimpaCampo
    Call Desabilita
    cmdnovo.Enabled = True
    cmdnovo.SetFocus
    cmdsalvar.Enabled = False

    Else
    MsgBox "Sua solicitação não será deferida." & vbNewLine & "Seu(s) Impedidor(es) já solicitou férias nesse período." & vbNewLine & "Favor selecionar outro mês e intervalo de data.", vbExclamation + vbOKOnly, "Atenção!"
    Call LimpaCampo
    Call Desabilita
    cmdnovo.Enabled = True
    cmdnovo.SetFocus
    cmdsalvar.Enabled = False
    End If
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 9681
    Registrado : 04/11/2009

    Re: [Resolvido]Erro em tempo de execução 3420 - objeto nao é valido ou nao esta definido.

    Mensagem  JPaulo em Qui 28 Jan 2016, 17:33

    Ola;

    Antes do If Not rstImped.EOF Then tem de ter o:
    If rstImped.RecordCount = 0 Then Exit Sub

    Outra coisa é que não deve declarar strings na mesma linha do DAO, deve separar;

    Dim strSql5 As String
    Dim strSql4 As String
    Dim rstVerifica As DAO.Recordset
    Dim rstImped As DAO.Recordset

    Faça os testes e retorne;


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]

    ifahidalgo
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 317
    Registrado : 13/10/2011

    Re: [Resolvido]Erro em tempo de execução 3420 - objeto nao é valido ou nao esta definido.

    Mensagem  ifahidalgo em Qui 28 Jan 2016, 19:03

    fiz as alterações e ainda continua o erro.

    Dim strSql4 As String
    Dim strSql5 As String
    Dim rstVerifica As DAO.Recordset
    Dim rstImped As DAO.Recordset

    strSql4 = "Select * From tblimpedimento WHERE coduser = int(val('" & Me.txtcoduser & "'))"
    Set rstImped = CurrentDb.OpenRecordset(strSql4, dbOpenSnapshot)

    If rstImped.RecordCount = 0 Then Exit Sub

    If Not rstImped.EOF Then
    rstImped.MoveFirst
    xid = " "
    xresultado = 0
    Do While Not rstImped.EOF
    xid = rstImped("idfuncional")
    xdatainicio = txtdatainicio
    xdatafim = txtdatatermino
    strSql5 = "Select * From tblFerias WHERE idfuncional = '" & xvid & "' and anoreferencia = int(val('" & txtanoref & "')) and mes = '" & cmbmesref & "' AND status <> 'QUITADO' and datainicial >= cdate('" & xdatainicio & "') and datainicial <= cdate('" & xdatafim & "')" 'and datafinal cdate('" & xdatainicio & "') and cdate('" & xdatafim & "')"
    Set rstVerifica = CurrentDb.OpenRecordset(strSql5, dbOpenSnapshot)
    If Not rstVerifica.EOF Then
    xresultado = xresultado + 1
    End If
    rstImped.MoveNext
    If rstImped.EOF Then
    rstImped.Close
    rstVerifica.Close
    End If
    Loop
    End If
    Set rstImped = Nothing
    Set rstVerifica = Nothing

    ifahidalgo
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 317
    Registrado : 13/10/2011

    Re: [Resolvido]Erro em tempo de execução 3420 - objeto nao é valido ou nao esta definido.

    Mensagem  ifahidalgo em Seg 15 Fev 2016, 16:21

    resolvido.

      Data/hora atual: Ter 24 Out 2017, 08:41