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


4 participantes

    [Resolvido]WHERE IN...

    avatar
    rodrigo_snail
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 11/09/2012

    [Resolvido]WHERE IN... Empty [Resolvido]WHERE IN...

    Mensagem  rodrigo_snail 25/9/2012, 02:40

    Boa noite,

    Estou tentando utilizar uma query com WHERE IN ligado ao um campo de formulário mas não está funcionando.

    Segue o código que estou tentando:
    Código:
    Select CODIGO, NOME From CLIENTES Where (CODIGO IN ([Formulários]![FormTeste]![CodCli]))
    [code]

    No campo CodCli do formulário digito: 1, 2

    E tenho este erro:
    Esta expressão foi digitada de forma incorreta ou é complexa demais para ser avaliada. Por exemplo, uma expressão numérica pode conter um número excessivo de elementos complicados. Tente simplificar a expressão atribuindo partes da expressão a variáveis. (Erro 3071)

    Se substituo a referencia ao campo formulário por (1, 2) funciona.

    Alguém pode me ajudar?

    Obrigado!
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]WHERE IN... Empty Re: [Resolvido]WHERE IN...

    Mensagem  criquio 25/9/2012, 03:09

    Tente assim:

    Código:
    Select CODIGO, NOME From CLIENTES Where CODIGO LIKE [Formulários]![FormTeste]![CodCli]


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    rodrigo_snail
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 11/09/2012

    [Resolvido]WHERE IN... Empty Re: [Resolvido]WHERE IN...

    Mensagem  rodrigo_snail 25/9/2012, 18:59

    Obrigado criquio,

    Com Like não funciona, pois necessito passar para a Query os codigos selecionados no formulário. Ex.: 13, 44, 96

    Fiz varios testes e não consigo utilizar o Where In recependo os parametros de um campo formulário.


    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]WHERE IN... Empty Re: [Resolvido]WHERE IN...

    Mensagem  Alexandre Neves 25/9/2012, 20:06

    Tente
    Select CODIGO, NOME From CLIENTES Where CODIGO IN ([Formulários]![FormTeste]![CodCli]))


    .................................................................................
    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
    avatar
    rodrigo_snail
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 11/09/2012

    [Resolvido]WHERE IN... Empty Re: [Resolvido]WHERE IN...

    Mensagem  rodrigo_snail 28/9/2012, 18:50

    Boa tarde Alexandre,

    Foi o que eu tentei, conforme descrevi em minha postagem de 24/09.

    Se o campo do formulário passa um código Ex: 13 funciona, caso eu digite dois ou mais códigos Ex: 13, 44 não funciona.

    Quandi digito mais do que um código utilizo ',' como separador, está correto?

    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]WHERE IN... Empty Re: [Resolvido]WHERE IN...

    Mensagem  Alexandre Neves 28/9/2012, 19:37

    Boa tarde,
    O código que lhe indiquei não tem os parêntesis que podem interferir na leitura
    Os valores 13, 44 têm de ficar '13', '44'


    .................................................................................
    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
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3883
    Registrado : 04/04/2010

    [Resolvido]WHERE IN... Empty Re: [Resolvido]WHERE IN...

    Mensagem  Avelino Sampaio 28/9/2012, 20:24

    Esta sua consulta será usada em que ? relatório, formulário, listbox , .. ?

    No aguardo



    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    avatar
    rodrigo_snail
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 11/09/2012

    [Resolvido]WHERE IN... Empty Re: [Resolvido]WHERE IN...

    Mensagem  rodrigo_snail 1/10/2012, 16:21

    Bom dia,

    Alexandre, testei conforme você me indicou e tenho o mesmo resultado. "Esta expressão foi digitada de forma incorreta ou é complexa demais para ser avaliada".

    Avelino, esta consulta será utilizada em um relatório.

    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]WHERE IN... Empty Re: [Resolvido]WHERE IN...

    Mensagem  Alexandre Neves 1/10/2012, 16:25

    Disponibilize a bd


    .................................................................................
    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
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3883
    Registrado : 04/04/2010

    [Resolvido]WHERE IN... Empty Re: [Resolvido]WHERE IN...

    Mensagem  Avelino Sampaio 1/10/2012, 16:41

    Uma outra opção seria não usar a filtragem na consulta.

    Tire a filtragem da consulta
    Passe o filtro na chamada do relatório. Exemplo:


    DoCmd.OpenReport "NomeDoRelatório", acViewPreview, , "CODIGO IN (" & me!CodCli & ")"

    Tenho exemplos no meu artigo abaixo:

    http://www.usandoaccess.com.br/tutoriais/tuto35.asp?id=1#inicio

    Sucesso!


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.

    Conteúdo patrocinado


    [Resolvido]WHERE IN... Empty Re: [Resolvido]WHERE IN...

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 7/5/2024, 15:08