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

    DMax com dois critérios

    Compartilhe

    Ribar
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 27
    Registrado : 12/08/2013

    DMax com dois critérios

    Mensagem  Ribar em Ter 03 Fev 2015, 19:00

    Olá pessoal,

    Necessito de ajuda:
    Tenho um controle de acesso do usuário, quando ele entra informa o nome, data e hora do acesso, pois bem
    em uma textbox consigo ter informação da ultima data de entrada (código abaixo).

    txtDataUser1 = DMax("[Data]", "[tblUsuarioData]", "[Nome]=" & "[txtUser1]")

    Mais o que não estou consegindo a buscar a ultima hora de acesso na ultima data ou seja, a última hora de acesso do usuário na última data ver código com erro abaixo.

    txtHoraUser1 = DMax("Hora", "tblUsuarioData", "[User1]=" & "[txtDataUser1]" And "[Data]=" & "[txtDataUser1]")

    Grato
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2807
    Registrado : 29/06/2012

    Re: DMax com dois critérios

    Mensagem  Noobezinho em Ter 03 Fev 2015, 20:43

    Olá Fabio

    Caso a tabela tblUsuarioData for somente para controlar das entradas (acredito que seja na aplicação), a coisa se torna mais fácil
    Caso não tenha uma Id de cada gravação nessa tabela, adicione.
    Assim, poderá usar o dmax() do ultimo registro de determinado usuário.
    Mas para isso funcionar, talvez tenha que mudar o modo de gravar nessa tabela.
    Primeiro verifique nessa tabela se o usuário entrou digamos 3 vezes no dia, se está gravado esses registros.

    Então uma vez que a gravação está ok:

    No código abaixo, se obtêm o último registro do usuário.
    Dmax("[Id]","tblUsuarioData","[User1]=" & "[txtDataUser1]")

    Agora que temos o último registro do usuário, vamos procurar a data desse registro:


    txtHoraUser1= Dlookup("[Data]","tblUsuarioData";"[id] = " & Dmax("[Id]","tblUsuarioData","[User1]=" & "[txtDataUser1]"))



    *Observação: A palavra "Data" é palavra reservada do Access, é um função que retorna a data atual.
                                Evite usar palavras reservadas como nome de campos, use mdata, minhadata, menos "Data"

    Escrevi essas linhas aqui, é apenas um exemplo para se seguir.  Wink

    [ ]'s

    Noob


    .................................................................................
    Noobezinho

    * A solução funcionou?  [Você precisa estar registrado e conectado para ver esta imagem.] 
    Agradeça e feche o tópico clicando no botão Resolvido
    Se não sabe como, veja [Você precisa estar registrado e conectado para ver este link.].

    Como anexar imagem no teu post do fórum : [Você precisa estar registrado e conectado para ver este link.]

    * Criar arquivos.zip com o Winrar - veja [Você precisa estar registrado e conectado para ver este link.].

    Atualmente estou verificando se quem está pedindo ajuda, ajudamos e não retornou.
    Se a pessoa em questão não deu retorno, não tentarei ajudar novamente .

      Data/hora atual: Qui 29 Jun 2017, 03:06