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]DPesquisar multicritério formulário vs tabela

    avatar
    antonio.canhoto
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 16
    Registrado : 06/12/2018

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  antonio.canhoto em 12/3/2020, 16:07

    Boa tarde,
    Estou precisando de uma ajudinha por aqui! Sou novo e com pouca experiência no Access. Como tal, será a minha primeira tentativa de pedido de ajuda
    Tenho um formulário "FormConsTab1"com um campo que deverá ser preenchido com o valor obtido pelos critérios definidos no DPesquisar.
    O DPesquisar irá procurar e verificar 2 condições numa tabela "TabRefDJ2" e atribuir o valor correspondente, que também está nesta tabela, no campo do formulário acima referido.

    Já tentei com diversas soluções, a maioria através deste Forum, mas ainda não consegui ter sucesso.

    Partilho o código que apliquei na origem de controlo: =DPesquisar("[RCGRef]";"TabRefDJ2";"[TipoDisjuntor]= '" & [Formulários]![FormConsTab1]![Especific DJ. Designação Objecto] & "'” &” E [CorrenteNominal]= '" & [Formulários]![FormConsTab1]![CorrenteNominal] & "'"). Nota: o erro que apareceo no interior do campo é: #Tipo!

    Agradeço desde já toda a ajuda e estou disponível para qualquer esclarecimento.
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2137
    Registrado : 22/11/2016

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  DamascenoJr. em 13/3/2020, 01:07

    Se o campo na tabela a ser buscado é do tipo texto então atente-se para finalizar a montagem do critério deixando o valor entre aspas duplas ou aspas simples. Se for do tipo data atente-se para deixá-lo entre #.

    Com o tempo vamos pegando o jeito de como montar os filtros. Veja mais explicações no tópico abaixo
    https://www.maximoaccess.com/t1533-funcao-dlookup-explicacao


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    avatar
    antonio.canhoto
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 16
    Registrado : 06/12/2018

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  antonio.canhoto em 13/3/2020, 11:35

    Olá,

    Muito obrigado pela resposta.
    Eu estive atento a essa questão e, à partida, levei isso em consideração uma vez que os 2 campos da minha tabela são do tipo texto.
    Vou analisar a informação do tópico que me enviou e fazer mais testes.
    Depois comunico o resultado.
    avatar
    antonio.canhoto
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 16
    Registrado : 06/12/2018

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  antonio.canhoto em 13/3/2020, 22:29

    Boa noite,

    Após inúmeras tentativas infrutíferas, mudei de aspas simples para aspas duplas e vice-versa e mudar de posição não consegui descobrir o erro. Coloco o comando de controlo para ver se me conseguem a ajudar a entender onde estará o erro.

    Obrigado

    =DPesquisar("[RCGRef]";"TabRefDJ2";"[TipoDisjuntor]= '" & [Formulários]![FormConsTab1]![Especific DJ. Designação Objecto] & "'” E [CorrenteNominal]= '" & [Formulários]![FormConsTab1]![CorrenteNominal] & "'")

    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2137
    Registrado : 22/11/2016

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  DamascenoJr. em 14/3/2020, 01:52

    Sem conhecer os controles do formulário é muito difícil detectar o problema. Pode ser um pequeno detalhe que não foi repassado ainda. Melhor anexar seu formulário e a tabela onde o Dpesquisa atuará. Assim poderemos encontrar o problema e definitivamente apontar a solução. Aguardamos.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    avatar
    antonio.canhoto
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 16
    Registrado : 06/12/2018

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  antonio.canhoto em 15/3/2020, 17:49

    Boa tarde,

    Para ajudar a descomplicar o mistério eu realizei um teste, com sucesso, em que separei os critérios individualmente. Ou seja, no Caso1 ficou =DPesquisar("SF6Ref";"TabRefDJ2";"TipoDisjuntor='" & [Especific DJ.Designação Objecto] & "'") e no Caso2 =DPesquisar("RCGRef";"TabRefDJ2";"CorrenteNominal='" & [CorrenteNominal] & "'"). No entanto, quando agrego os critérios (Campo1+2) dá o erro #Tipo!

    Envio então o projecto para que se possa analisar.
    Deixo umas notas para efeitos de esclarecimento:
    1 - o nome do formulário em questão é: FormConsTab1. Este formulário alimenta 3 tabelas (TabInspB1;TabInspB2 e TabInspB3) que por sua vez foram agregadas em 2 consultas (ConsTab1 e ConsTab2). Foi o sistema que eu desenhei pois necessito de muitos campos a serem preenchidos.
    2 - o nome da tabela é: TabRefDJ2. esta tabela possui 3 campos (TipoDisjuntor; CorrenteNominal e Corrente de Curto-Circuito), estes campos são os critérios, ou seja, as condições. Os restantes campos são valores de referência. Ex: se se verificar a igualdade de 2 critérios (tipo de disjuntor e corrente nominal da tabela = tipo de disjuntor e corrente nominal do formulário, então deverá ser preenchido, com o valor de referência correspondente (ex: SF6Ref ou RCGRef), o campo (Caso1+2) do formulário FormConsTab1.

    3 - No formulário temos o campo Caso 1; Caso 2 e Caso 1+2, referido inicialmente. Precisava de solucionar o campo do Caso 1+2.

    Obrigado pela atenção.
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

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

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  Assis em 15/3/2020, 18:23

    Boa tarde

    O projecto não veio para ser analisado.


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

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2137
    Registrado : 22/11/2016

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  DamascenoJr. em 15/3/2020, 19:52

    Para finalizar, troque o E por And

    =DPesquisar("[RCGRef]";"TabRefDJ2";"[TipoDisjuntor]= '" & [Formulários]![FormConsTab1]![Especific DJ. Designação Objecto] & "'” E [CorrenteNominal]= '" & [Formulários]![FormConsTab1]![CorrenteNominal] & "'")

    =DPesquisar("[RCGRef]";"TabRefDJ2";"[TipoDisjuntor]= '" & [Formulários]![FormConsTab1]![Especific DJ. Designação Objecto] & "'” And [CorrenteNominal]= '" & [Formulários]![FormConsTab1]![CorrenteNominal] & "'")

    Lembrei que o Access costuma interpretar bem os conectivos quando estão "expostos", mas quando estão "encapsulados" o certo é usar o idioma nativo.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    avatar
    antonio.canhoto
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 16
    Registrado : 06/12/2018

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  antonio.canhoto em 16/3/2020, 18:31

    Olá boa tarde,

    Efectivamente também já tinha tentado passar o E a And, mas sem efeito.

    Anexo o projecto, pois não terá ido no post anterior por excesso de tamanho.

    Obrigado.
    Anexos
    [Resolvido]DPesquisar multicritério formulário vs tabela AttachmentOFFLine_Maximo.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (57 Kb) Baixado 9 vez(es)
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2137
    Registrado : 22/11/2016

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  DamascenoJr. em 16/3/2020, 21:04

    A nomenclatura dos objetos em um banco de dados é algo tremendamente importante. Usar palavras reservadas do Access, caracteres especiais, acentos, pontos, dentre outros, é pedir pra ter problemas futuros. Sem falar na dificuldade para manutenção.

    Seu problema é um espaço
    Código:
    [Especific DJ. Designação Objecto]
    Código:
    [Especific DJ.Designação Objecto]


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    avatar
    antonio.canhoto
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 16
    Registrado : 06/12/2018

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  antonio.canhoto em 17/3/2020, 15:49

    Boa Tarde,
    Não está nada fácil. Corrigi o espaço e desta apareceu outro erro: #Erro. Não sei o que me poderá estar a escapar.

    É verdade que a utilização desses caracteres especiais dificulta imenso e já estou a tratar de corrigir. Tentei de diversas formas sem sucesso: 1 - correcção do espaço como indicado; 2 - substituição da nomenclatura mais simples e 3 - alteração dos dados do campo corrente nominal por tipo numérico.
    Anexo o projecto das tentativas 1 e 2, para me poderem dar uma ajudinha.

    Obrigado pelo apoio @DamascenoJr.
    Anexos
    [Resolvido]DPesquisar multicritério formulário vs tabela AttachmentDesktop.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (139 Kb) Baixado 8 vez(es)
    avatar
    antonio.canhoto
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 16
    Registrado : 06/12/2018

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  antonio.canhoto em 17/3/2020, 15:57

    É possível utilizar outra função no lugar do DPesquisar?
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

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

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  Assis em 17/3/2020, 18:00

    Boa tarde

    O resultado é 11 (onze) no caso 1+2 ???



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

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2137
    Registrado : 22/11/2016

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  DamascenoJr. em 17/3/2020, 20:24

    antonio.canhoto escreveu:É possível utilizar outra função no lugar do DPesquisar?
    Não desista. Isso pode atrapalhar o desenvolvimento dos seus projetos.

    A função DLookUp é funcional, resta saber onde está o problema. Já sabemos que um espaço não deveria existir. Porém o erro persisti. Então vamos analisar o restante.

    Vamos analisar a montagem do filtro. Digamos que para [Formulários]![FormConsTab1]![TipoDisjuntor] haja o valor "AB", e que para [Formulários]![FormConsTab1]![CorrenteNominal] haja o valor "CD".

    A montagem da parte do filtro ficaria
    "[TipoDisjuntor]= 'AB' And [CorrenteNominal]= 'CD'"

    Analisemos:
    Aspas duplas abrindo no início e aspas duplas fechando lá no final. Certo.
    As strings/textos que existem no meio estão entre aspas simples. Certo.
    Ooooops! Há aspas duplas sobrando ali no meio (entre "AB" e "And") que não abre e nem fecha nada, então retire-as.

    Fiz aqui e resolveu.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    avatar
    antonio.canhoto
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 16
    Registrado : 06/12/2018

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  antonio.canhoto em 19/3/2020, 09:47

    Bom dia,

    Simplesmente funcionou!!! Como é que 2 coisinhas me quebraram a cabeça.

    Agradeço ao @DamascenoJr ao apoio dado sobre a resolução deste problema.

    Sem querer deixar de dar resposta à dúvida apresentada pelo @Assis, que também agradeço. O problema não era realizar a soma dos dois campos. Os 2 campos foram só para testar um critério de cada vez. O campo 1+2 considera os 2 critérios agregados somente num só (multicritério do DPesquisar). Analisando a tabela 2 do OFFLine_Maximo2, por exemplo, caso se verifica-se a condição TipoDisjuntor = 3AP1 FI e CorrenteNominal = 3.500,0 A, então o valor que deveria aparecer no campo do formulário (campo1+2) = 5 correspondente à coluna RCGRef .

    Mais uma vez o meu sincero obrigado e ... saúde.
    avatar
    antonio.canhoto
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 16
    Registrado : 06/12/2018

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  antonio.canhoto em 19/3/2020, 09:48

    Vou fechar o tópico "Resolvido"
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2137
    Registrado : 22/11/2016

    [Resolvido]DPesquisar multicritério formulário vs tabela Empty Re: [Resolvido]DPesquisar multicritério formulário vs tabela

    Mensagem  DamascenoJr. em 19/3/2020, 19:37

    O fórum agradece o retorno. Sucesso.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.

      Data/hora atual: 11/8/2020, 13:43