MaximoAccess

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

Obrigado

Administração do MaximoAccess

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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

    [Resolvido]Detetar se valor do campo foi alterado

    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4200
    Registrado : 06/11/2009

    [Resolvido]Detetar se valor do campo foi alterado Empty [Resolvido]Detetar se valor do campo foi alterado

    Mensagem  Assis em 13/9/2018, 14:17

    Boa tarde amigos

    No clik de um botão queria detetar se o valor do campo "Texto43" foi alterado.

    O campo Texto43 é um campo onde tem a soma de outros campos.

    Estou a tentar usar o comando abaixo mas não está a detetar quando o campo "Texto43" é alterado, e queria a informação da MsgBox.


    If Nz(Texto43) <> Nz(Texto43.OldValue) Then

    If MsgBox("Dados Alterados Deseja Salvar ? " & Chr(10) + Cliente & Chr(10) + Chr(13) & "No Valor de " & Format(EncValor, "#,##0.00"), vbYesNo + vbQuestion, "Aviso") = vbNo Then

    else

    aqui o meu código
    end if


    End If


    .................................................................................
    *** Só sei que nada sei ***
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7649
    Registrado : 05/11/2009

    [Resolvido]Detetar se valor do campo foi alterado Empty Re: [Resolvido]Detetar se valor do campo foi alterado

    Mensagem  Alexandre Neves em 13/9/2018, 16:49

    Boa tarde, Assis
    Tens algum controlo que contenha dado único de registo (código, etc)?

    se sim
    currentdb.execute "DELETE * FROM Tabela WHERE Código=" & TxtCodigo


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    JPaulo
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

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

    [Resolvido]Detetar se valor do campo foi alterado Empty Re: [Resolvido]Detetar se valor do campo foi alterado

    Mensagem  JPaulo em 13/9/2018, 17:29

    OldValue só funciona se o campo estivesse numa tabela, em caixas desvinculadas não funciona.

    Use o Dirty.


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

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Detetar se valor do campo foi alterado Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Detetar se valor do campo foi alterado Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Detetar se valor do campo foi alterado Folder_announce_new Instruções SQL como utilizar...
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4200
    Registrado : 06/11/2009

    [Resolvido]Detetar se valor do campo foi alterado Empty Re: [Resolvido]Detetar se valor do campo foi alterado

    Mensagem  Assis em 13/9/2018, 17:39

    Obrigado JPaulo

    Fica aqui pode servir para exemplo.


    If Me.Dirty = True Then
    If MsgBox("Dados Alterados Deseja Salvar ? " & Chr(10) + Cliente & Chr(10) + Chr(13) & "No Valor de " & Format(EncValor, "#,##0.00"), vbYesNo + vbQuestion, "Aviso") = vbNo Then
    Me.Undo
    Else


    Dim DB1 As DAO.Database, rs As DAO.Recordset
    Set DB1 = CurrentDb()
    Set rs = DB1.OpenRecordset("encomenda", dbOpenDynaset)
    rs.FindFirst "ln = " & Me.Lnn
    rs.Edit
    rs("RecebiFT") = Me.Texto43.Value
    rs.Update
    rs.Close
    Set rs = Nothing
    Set DB1 = Nothing

    End If
    End If


    .................................................................................
    *** Só sei que nada sei ***
    JPaulo
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

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

    [Resolvido]Detetar se valor do campo foi alterado Empty Re: [Resolvido]Detetar se valor do campo foi alterado

    Mensagem  JPaulo em 13/9/2018, 17:47

    Complemente a instrução para ficar completa;

    Código:
    If Me.Dirty = True Then
       Me.Dirty = False


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

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Detetar se valor do campo foi alterado Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Detetar se valor do campo foi alterado Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Detetar se valor do campo foi alterado Folder_announce_new Instruções SQL como utilizar...

      Data/hora atual: 12/7/2020, 13:15