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

    [Resolvido]#Erro DPesquisa

    Compartilhe

    LuizGabriel
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 19/05/2017

    [Resolvido]#Erro DPesquisa

    Mensagem  LuizGabriel em Qua 31 Maio 2017, 19:02

    Olá pessoal!

    Estou tentando utilizar a função DPesquisa em um formulário mas ela está retornando um valor "#Erro".

    Quero digitar um número de pedido, ele procurar na consulta "consultaZY02" e ele me retornar o número do "Elemento PEP".

    Mas está acontecendo isso:
    [Você precisa estar registrado e conectado para ver esta imagem.]

    O código que está na Fonte de Controle do campo texto Elemento PEP é este:
    Código:
    =DPesquisa("Elemento PEP";"consultaZY02";"Pedido=" & [txtPedido])

    Não sei se está faltando algum argumento especial que deve ser usado para consultas diferentes de tabelas ou se a posição do elemento que está errada.

    Alguém pode me ajudar?
    Anexos
    Database1.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (888 Kb) Baixado 8 vez(es)

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 120
    Registrado : 19/10/2016

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  Carlao2 em Qua 31 Maio 2017, 21:29

    Luiz Gabriel. Boa tarde.

    Veja se atende suas necessidades.
    Anexos
    Database1 (1).zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (888 Kb) Baixado 9 vez(es)
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4534
    Registrado : 15/03/2013

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  ahteixeira em Qua 31 Maio 2017, 21:48

    Olá a todos,

    Luiz Gabriel a questão do seu não funcionar deve-se a dois factores.

    a) Nomes com espaço (colocar entre [], pode ser todos)
    b) O campo txtPedido é do tipo Texto, então deve-se colocar entre Aspas duplas ou simples. Se fosse numerico não é necessário.

    Teste assim:
    Código:
    =DPesquisar("[Elemento PEP]";"[consultaZY02]";"[Pedido] = '" & [txtPedido] & "'")


    Abraço a todos

    LuizGabriel
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 19/05/2017

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  LuizGabriel em Sex 02 Jun 2017, 14:32

    Deu certo!!!!

    Carlao2 escreveu:
    Luiz Gabriel. Boa tarde.

    Veja se atende suas necessidades.

    Muito obrigado pela sua colaboração Carlao2, vocês aqui do fórum são de grande valia e ajuda!

    ahteixeira escreveu:
    Olá a todos,

    Luiz Gabriel a questão do seu não funcionar deve-se a dois factores.

    a) Nomes com espaço (colocar entre [], pode ser todos)
    b) O campo txtPedido é do tipo Texto, então deve-se colocar entre Aspas duplas ou simples. Se fosse numerico não é necessário.

    Teste assim:
    CÓDIGO:
    Código:
    =DPesquisar("[Elemento PEP]";"[consultaZY02]";"[Pedido] = '" & [txtPedido] & "'")

    Abraço a todos

    ahteixeira
    Você ter explicado o passo a passo e ter mostrado o erro no meu código ajudou MUITO!

    Eu assistia alguns vídeos no YouTube e via as pessoas colocando colchetes e outras não. Nunca tinha conseguido entender o que ele fazia exatamente.

    Eu apenas fiquei com duas dúvidas:

    b) O campo txtPedido é do tipo Texto, então deve-se colocar entre Aspas duplas ou simples. Se fosse numerico não é necessário."]

    Isto é configuração da minha tabela, correto? Se eu quiser mudar para tipo numérico eu devo fazer isto em minha tabela, né?


    Segunda dúvida: Eu não consegui entender este trecho do seu código:
    Código:
    '" & [txtPedido] & "'")
    Não entendi o porque a quantidade de aspas e o porque do apóstrofo (') no meio delas. Consegue me mostrar o por que preciso usar isso? É sempre que devo fazer desta forma?

    Muito obrigado por toda a ajuda.

    Carlao2
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 120
    Registrado : 19/10/2016

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  Carlao2 em Sex 02 Jun 2017, 14:42

    Bom dia LuizGabriel

    De nada, precisando estamos às ordens.


    Grande abraço

    LuizGabriel
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 19/05/2017

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  LuizGabriel em Sex 02 Jun 2017, 15:30

    Bom dia Carlao2, aproveitando mais um pouquinho seu conhecimento e boa vontade de eninsar posso tirar mais uma dúvida? Laughing

    Eu quero copiar o valor que o DPesquisa me retornou no campo "Validação PEP" para o campo "PEP a ser adicionado" e salva-lo na tabela "Base zy02". Desta forma (copiei e colei manualmente):
    [Você precisa estar registrado e conectado para ver esta imagem.]

    Você sabe como eu faço isso?

    Fui "remendando" alguns códigos que achei na Web mas e criei isso:
    Código:
    Private Sub txtAdicaoPEP_Click()
    'Verifica se o campo Validação PEP está vazio para não salvar valores em branco na tabela BasePEP
    If Not IsEmpty(Me.txtValidPEP) Then
            Me.txtAdicaoPEP = txtValidPEP
        Else
        End If
    End Sub

    Não está funcionando muito bem. Ele não atualiza o campo "PEP à ser adicionado" conforme o "Validação PEP" é atualizado.

    Poderia me ajudar?
    avatar
    tauron
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 697
    Registrado : 07/12/2011

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  tauron em Sex 02 Jun 2017, 17:34

    tente assim:


    Private Sub txtAdicaoPEP_Click()
    If Not IsEmpty(Me.txtValidPEP) Then
    Me.txtAdicaoPEP = txtValidPEP
    End If
    End Sub
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4534
    Registrado : 15/03/2013

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  ahteixeira em Sex 02 Jun 2017, 17:59

    Olá a todos,
    Luiz Gabriel, estou no celular, mas vou tentar explicar a dúvida da mensagem n. 4.

    Imagine que quer pesquisar o código A001, tendo o A é um campo texto (String).
    Se fosse colocar diretamente, tinha que colocar entre plicas, porque é texto:
    Código:
    =DPesquisar("[Elemento PEP]";"[consultaZY02]";"[Pedido] = 'A001'")

    Se fosse 121, numerico, então não coloca as plicas:
    Código:
    =DPesquisar("[Elemento PEP]";"[consultaZY02]";"[Pedido] = 121")
    Então é esta a diferença de colocar ou não as plicas.

    Como você tem no seu form um campo txtPedido, foi incluído na instrução.
    Código:
    =DPesquisar("[Elemento PEP]";"[consultaZY02]";"[Pedido] = '" & [txtPedido] &"'")

    Estamos a concatenar a instrução usando para isso o &
    Abraço

    LuizGabriel
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 19/05/2017

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  LuizGabriel em Ter 06 Jun 2017, 13:51

    Obrigado amigo, grande esclarecimento!  Em partes estes "&" me lembra uma forma usada para concatenar no Excel onde já estou mais familiarizado.
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4534
    Registrado : 15/03/2013

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  ahteixeira em Ter 06 Jun 2017, 13:57

    Olá Luiz Gabriel, obrigado pelo retorno, é mesmo isso.

    Se está resolvido, não se esqueça de:
    [Você precisa estar registrado e conectado para ver este link.]

    Abraço

    LuizGabriel
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 19/05/2017

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  LuizGabriel em Ter 06 Jun 2017, 14:07

    Valeu tauron, eu por puro acidente consegui fazer funcionar a função que copia o número de PEP para um outro campo. Very Happy

    -------------------------------

    Para finalizar o meu formulário só preciso fazer algo aparentemente simples:

    [Você precisa estar registrado e conectado para ver esta imagem.]

    Quero armazenas os 13 primeiros caracteres do campo "Validação" na caixa de texto "PEP Nível 1".

    Isso no Excel é facinho, é só fazer um =ESQUERDA([célula];13).  No Access eu tentei fazer algo parecido nas propriedades de fonte de controle. Visualmente funcionou, mas se torna algo inutíl porque não consigo salvar esta informação na minha tabela.

    Como eu faço isso? É através de VBA?
    Anexos
    Database1_2017-06-06.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (688 Kb) Baixado 7 vez(es)
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4534
    Registrado : 15/03/2013

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  ahteixeira em Ter 06 Jun 2017, 16:13

    Olá no Access é:

    Código:
    =left([campo];13)

    Abraço

    LuizGabriel
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 19/05/2017

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  LuizGabriel em Ter 06 Jun 2017, 17:39

    Olá, desculpe a ignorância mas onde eu adiciono isso? É no fomulário? Na tabela que armazena os dados do formulário? Estou perdido.
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4534
    Registrado : 15/03/2013

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  ahteixeira em Qua 07 Jun 2017, 02:13

    Olá, tente assim:
    [Você precisa estar registrado e conectado para ver este link.]
    Abraço

    LGabriell
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 31/03/2017

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  LGabriell em Qua 07 Jun 2017, 03:23

    Olá amigo, infelizmente não é funcional amigo.

    Além dele não atualizar quando o Elemento PEP é alterado eu não consigo salvar esta sentença de 13 caracteres na tabela, já que a origem de controle foi alterada.

    A aparência até que "funciona" no formulário, mas na tabela a célula fica em branco. Neutral
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4534
    Registrado : 15/03/2013

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  ahteixeira em Qua 07 Jun 2017, 11:31

    Olá, então reponha a origem do campo como estava.
    Para isso temos que usar o VBA num Evento, tente assim:
    Código:
    Private Sub txtPedido_AfterUpdate()
    'Verifica se o campo Validação PEP está vazio para não salvar valores em branco na tabela BasePEP
        If Not IsEmpty(Me.txtValidPEP) Then
            Me.txtAdicaoPEP = txtValidPEP
            Me.txtAdicaoPEP = Left(DLookup("[Elemento PEP]", "[consultaZY02]", "[Pedido]='" & [txtPedido] & "'"), 13)
        Else
        End If
    End Sub

    Abraço

    LGabriell
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 31/03/2017

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  LGabriell em Sex 09 Jun 2017, 10:11

    Deu muito certo! Consegui! cheers

    Tópico encerrado. Muito obrigado a todos que colaboraram!

    Ps.: Não estou conseguindo encontrar o botão para adicionar como "Resolvido".
    avatar
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4534
    Registrado : 15/03/2013

    Re: [Resolvido]#Erro DPesquisa

    Mensagem  ahteixeira em Sex 09 Jun 2017, 10:18

    Olá Luiz Gabriel, obrigado pelo retorno.

    Veja aqui como fazer:
    [Você precisa estar registrado e conectado para ver este link.]

    Abraço

      Data/hora atual: Ter 21 Nov 2017, 17:38