MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Vários filtros para montar SQL

    Compartilhe

    rg3915
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 119
    Registrado : 17/06/2013

    [Resolvido]Vários filtros para montar SQL

    Mensagem  rg3915 em Seg 08 Set 2014, 18:28

    Eu tenho os campos Status, Funcionario e Período

    Eu queria montar um SQL onde pode aparecer um, dois ou três dos campos preenchidos.
    Na hora de montar o SQL pode aparecer

    strfiltroStatus
    strfiltroStatus, strFiltroFuncionario
    strfiltroStatus, strFiltroFuncionario, strFiltroPeriodo

    ou combinações desses três.

    Pergunta: Como eu faço para controlar o filtro

    strFiltro = strfiltroStatus & " AND " & strFiltroFuncionario & " AND " & strFiltroPeriodo

    sendo que as vezes pode retornar algo com AND na frente? Exemplo,

    strFiltro = " AND " & strFiltroFuncionario & " AND " & strFiltroPeriodo

    E sem ter que usar um monte de if then else?

    Será que me expliquei bem?

    Mrsilva
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 123
    Registrado : 03/11/2011

    Re: [Resolvido]Vários filtros para montar SQL

    Mensagem  Mrsilva em Seg 08 Set 2014, 19:02

    Olá.

    Sem o uso de if then else, acho difícil de conseguir, eu tenho um procedimento em um aplicativo que monta a instrução SQL de acordo com as informações colocada no formulário pelo usuário, mas utilizo if then else.

    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    Re: [Resolvido]Vários filtros para montar SQL

    Mensagem  Alexandre Neves em Seg 08 Set 2014, 20:40

    Boa noite,
    Não sei como tem as strings. Já têm o campo e a condição?
    Adapte
    if strfiltroStatus <>"" then strFiltro = " and " & strfiltroStatus
    if strfiltroFuncionario <>"" then strFiltro = strFiltro & " and " & strfiltroFuncionario
    if strfiltroPeriodo <>"" then strFiltro = strFiltro & " and " & strfiltroPeriodo
    if strfiltro <>"" then strFiltro = mid(strfiltro,5)


    .................................................................................
    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

    rg3915
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 119
    Registrado : 17/06/2013

    Re: [Resolvido]Vários filtros para montar SQL

    Mensagem  rg3915 em Seg 08 Set 2014, 21:44

    Ola Alexandre.
    Perfect!!!
    Valeu.

    Só coloquei no começo
    strFiltro = ""

    porque se eu clicasse nos botões várias vezes (testes) ele não reiniciava o strFiltro.

    Tks.

      Data/hora atual: Qua 07 Dez 2016, 20:13