MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

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


2 participantes

    Executar filtro com DateDiff pelo VBA

    avatar
    Jonatan
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 234
    Registrado : 03/05/2012

    Executar filtro com DateDiff pelo VBA Empty Executar filtro com DateDiff pelo VBA

    Mensagem  Jonatan Qua 08 Mar 2017, 03:39

    Boa noite, amigos

    Estou tentando executar, sem êxito, o seguinte código: DoCmd.ApplyFilter , "InícioContrato=#" & DateDiff("m", InícioContrato, Date) >= 12 & "# And #" & DateDiff("m", InícioContrato, Date) <= 15 & "#"

    Esse código como critério de consulta funciona perfeitamente: WHERE ((DateDiff("m",[InícioContrato],Date())>=12 And DateDiff("m",[InícioContrato],Date())<=15));
    Já no VBA ocorre erro em tempo de execução '2427': Você inseriu uma expressão que não tem valor.

    Grato pela ajuda.
    avatar
    Jonatan
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 234
    Registrado : 03/05/2012

    Executar filtro com DateDiff pelo VBA Empty Re: Executar filtro com DateDiff pelo VBA

    Mensagem  Jonatan Qui 09 Mar 2017, 00:52

    Alguma ideia, amigos?
    philipp.moreira
    philipp.moreira
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 257
    Registrado : 05/02/2016

    Executar filtro com DateDiff pelo VBA Empty Re: Executar filtro com DateDiff pelo VBA

    Mensagem  philipp.moreira Sex 10 Mar 2017, 04:05

    Jonatan, boa noite!

    Creio que está encontrando erro no código VBA, pois está usando o qualificador de datas #, sendo que a função Datediff retorna um variant/long e não uma data. Tente assim:

    Código:

    DoCmd.ApplyFilter , "InícioContrato= " & DateDiff("m", InícioContrato, Date) >= 12 & " And " & DateDiff("m", InícioContrato, Date) <= 15
    avatar
    Jonatan
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 234
    Registrado : 03/05/2012

    Executar filtro com DateDiff pelo VBA Empty Re: Executar filtro com DateDiff pelo VBA

    Mensagem  Jonatan Sex 10 Mar 2017, 12:43

    Bom dia, philipp.moreira. Obrigado pela ajuda.


    O erro não ocorre mais, porém o filtro não funciona. Fiz um teste numa consulta com os mesmos parâmetros e está normal. Só no VBA que não funciona o filtro.
    philipp.moreira
    philipp.moreira
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 257
    Registrado : 05/02/2016

    Executar filtro com DateDiff pelo VBA Empty Re: Executar filtro com DateDiff pelo VBA

    Mensagem  philipp.moreira Sex 10 Mar 2017, 16:25

    Desculpe errei na composição. Tente assim:

    Código:

    DoCmd.ApplyFilter , DateDiff("m", InícioContrato, Date) & " >= 12 And " & DateDiff("m", InícioContrato, Date) & " <= 15"
    avatar
    Jonatan
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 234
    Registrado : 03/05/2012

    Executar filtro com DateDiff pelo VBA Empty Re: Executar filtro com DateDiff pelo VBA

    Mensagem  Jonatan Sex 10 Mar 2017, 18:19

    Não funcionou. Voltou a ocorrer o erro anterior 2427: Você inseriu uma expressão que não tem valor.

    Conteúdo patrocinado


    Executar filtro com DateDiff pelo VBA Empty Re: Executar filtro com DateDiff pelo VBA

    Mensagem  Conteúdo patrocinado


      Data/hora atual: Sex 19 Abr 2024, 12:13