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]Função DLOOKUP

    maguim
    maguim
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 446
    Registrado : 15/05/2013

    [Resolvido]Função DLOOKUP Empty [Resolvido]Função DLOOKUP

    Mensagem  maguim em 21/3/2017, 14:23

    Galera

    Bom dia !


    Então estou entrando no ruma das funções Dlookup.

    Função mto interessante na consulta.

    Minha duvida... achei algo na internet, porem estou com um problema.


    DlookUp("[Campo]", "[Tabela]", "Busca = '" & SuaVariável & "'") se SuaVariável é texto.

    DlookUp("[Campo]", "[Tabela]", "Busca = " & SuaVariável) se SuaVariável é número.

    DlookUp("[Campo]", "[Tabela]", "Busca = #" & Format(SuaVariável,"mm/dd/yyyy") & "#") se SuaVariável é data.



    Tenho um formulário de login e tenho um botão com a função que localiza, se o cara tem o accesso = 0 para poder funcionar o botão.

    porem estou com dificuldade no criterio da função dlookup

    Quero que localize no campo admin da tabela Tbl_01_01_Usuario e o criterio 0

    ou seja, somente no campo admin, quem tiver 0 pode clicar fazer funcionar o botao.

    porem estou com um erro, que ele nao localiza o criterio 0, ele fala que nao tenho acesso.


    segue o código

    Private Sub BtnPainelMoradores_Click()
    Dim Acesso As Variant
    Dim UsuarioLogado As String

    UsuarioLogado = Me.Responsavel.Value

    Acesso = DLookup("Admin", "Tbl_01_01_Usuario", Busca = 0)

    If Acesso = True Then
    DoCmd.OpenForm "Frm_03_01_01_CatalogoDeMoradores", acNormal, "", "", , acNormal
    Else
    MsgBox "Você não está autorizado a acessar essa função!", vbExclamation, "Acesso negado"
    End If

    End Sub


    Última edição por maguim em 22/3/2017, 13:40, editado 1 vez(es)
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3913
    Registrado : 14/08/2013

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  FabioPaes em 21/3/2017, 15:19

    Olá, tanto o campo buscado quanto o criterio deve ficar entre aspas""

    DLookup("Admin", "Tbl_01_01_Usuario", "Busca = 0") 'Se Busca for Numero.

    DLookup("Admin", "Tbl_01_01_Usuario", "Busca = '0'") 'Se Busca for Texto



    Tenha cuidado com as Funções Dxxx Pois são consulta que retornam valores únicos. Muitas vezes e mais aconselhável abrir recordset para buscar valores de vários campos evitando ter que ir ao BD por varias vezes para obter o mesmo resultado com dlookup.


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    maguim
    maguim
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 446
    Registrado : 15/05/2013

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  maguim em 21/3/2017, 16:42

    fabio obg pela informação, porem continua dando erro


    DLookup("Admin", "Tbl_01_01_Usuario", "Busca = 0")

    erro 2417 de expressao parametro ou consulta.
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3913
    Registrado : 14/08/2013

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  FabioPaes em 21/3/2017, 19:02

    Poste exemplo pra eu dar olhada! Pq e dessa forma aee amigo!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    maguim
    maguim
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 446
    Registrado : 15/05/2013

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  maguim em 21/3/2017, 19:16

    fabiao !

    acho que sei qual é o problema, mas não tenho ideia como arrumar

    formulário tem um box onde o dlookup retorna o usuario e o acesso esta relacionado com campo admin... acho que teria que mudar a logica algo do tipo:


    acesso = admin talvez, acho que não estou certo... scratch


    abraços.



    Anexos
    [Resolvido]Função DLOOKUP Attachmentteste.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (305 Kb) Baixado 30 vez(es)
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3913
    Registrado : 14/08/2013

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  FabioPaes em 21/3/2017, 19:23

    Amigo, não tem o campo Busca na sua tabela! Esse e o motivo do erro: Acesso = DLookup("Admin", "Tbl_01_01_Usuario", "Busca = 0")

    Me diga o que pretendia com esse botão!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    maguim
    maguim
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 446
    Registrado : 15/05/2013

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  maguim em 21/3/2017, 19:45

    somente quem tiver o codigo 0 da tabela usuario poderia acessa esse botao.
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3913
    Registrado : 14/08/2013

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  FabioPaes em 22/3/2017, 12:22

    A sim... Então tera que mudar umas coisinha aeee. Acesso não poderá ser falso ou Verdadeiro (Pois Falso =0 e verdadeiro =-1) é como falou, quer dar acesso se for igual a 0 (Falso). Dessa forma terá que mudar para integer, e verificar se Acesso=0.

    Outra coisa que deve observar e a estrutura do Dlookup, Veja na Imagem:
    [Resolvido]Função DLOOKUP Dlooku10
    Dlookup("O que buscar","Onde quer Buscar","Criterio para a busca")

    Mude o Codigo do Botão para:
    Código:
    Private Sub BtnPainelMoradores_Click()
    Dim Acesso As Integer
    Dim UsuarioLogado As String

    UsuarioLogado = Me.Responsavel.Value

    Acesso = DLookup("Admin", "Tbl_01_01_Usuario", "Usuario = '" & Me.Responsavel & "'")

    If Acesso = 0 Then
    DoCmd.OpenForm "Frm_03_01_01_CatalogoDeMoradores", acNormal, "", "", , acNormal
    Else
    MsgBox "Você não está autorizado a acessar essa função!", vbExclamation, "Acesso negado"
    End If

    End Sub


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    maguim
    maguim
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 446
    Registrado : 15/05/2013

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  maguim em 22/3/2017, 13:18

    Fabiao !

    cara sensacional sua posição, fico mto mais claro agr.

    Lê alguns topico que dlookup é como se fosse "PROCV". Mas com sua explicação ficou clarissimo.


    Referente ao codigo, entao nao verdade eu declaro o integer em baixo e nao DLOOKUP.

    Um exemplo escroto !


    Dim Acesso As Integer
    Dim aluno As String

    aluno = Me.biometria.Value

    Acesso = DLookup("aluno", "tabela_de_biometria", "Usuario = '" & Me.biometria & "'")

    If Acesso = aluno Then
    DoCmd.OpenForm "LIBERAR CATRACA", acNormal, "", "", , acNormal
    Else
    MsgBox "SUA CREDENCIAL EXPERIOU", vbExclamation, "Acesso negado"
    End If


    Certo? é bem escroto mais pra saber se eu entende mesmo kkk

    abraços
    FabioPaes
    FabioPaes
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3913
    Registrado : 14/08/2013

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  FabioPaes em 22/3/2017, 13:50

    A questão de eu ter declarado a variável "Acesso" Como Integer é que a procura (Dlookup) era em cima de uma campo que teria o valor 0 ou 1. Agora se tiver valores quebrados, como por exemplo 1,5 dará erro pois o valor da pesquisa não é Inteiro e a variável foi preparada para armazenar um valor inteiro!


    Quando eu Rodo um Dlookup assim :
    Acesso = DLookup("Admin", "Tbl_01_01_Usuario", "Usuario = '" & Me.Responsavel & "'")

    A Minha variável "Acesso" passará a ter o valor encontrado no Campo "Admin" (Observe, ela terá o VALOR desse campo) de acordo com o criterio!


    .................................................................................
    _____________________________________________________________________
    Achou a solução para sua dúvida? Não seja Egoísta, Compartilhe com todos!
    A dica do Colega foi útil? Agradeça!

    O importante não saber tudo, mas sim a Onde procurar!
    crysostomo
    crysostomo
    VIP
    VIP

    Respeito às Regras 50%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1467
    Registrado : 23/01/2018

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  crysostomo em 16/8/2019, 17:36

    mas se o usuário coloca uma aspa, tipo eduardo' o sistema da pau e manda a mensagem de depurar


    .................................................................................
    Uma mão ajuda a outra.
    Feliz aquele que transfere o que sabe e aprende o que ensina.
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

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

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  DamascenoJr. em 16/8/2019, 21:46

    Veja, crysostomo
    docs.microsoft.com/pt-br/office/vba/access/concepts/criteria-expressions/include-quotation-marks-in-string-expressions

    Em resumo, no lugar de aspas simples coloque aspas duplas duas vezes


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

    Respeito às Regras 50%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1467
    Registrado : 23/01/2018

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  crysostomo em 19/8/2019, 17:35

    Obrigado Ivan.
    Vou estudar isso


    .................................................................................
    Uma mão ajuda a outra.
    Feliz aquele que transfere o que sabe e aprende o que ensina.
    crysostomo
    crysostomo
    VIP
    VIP

    Respeito às Regras 50%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1467
    Registrado : 23/01/2018

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  crysostomo em 19/8/2019, 20:37

    tentando entender aqui o porque ele ele busca so a primeira linha


    .................................................................................
    Uma mão ajuda a outra.
    Feliz aquele que transfere o que sabe e aprende o que ensina.
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

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

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  DamascenoJr. em 19/8/2019, 22:05

    Anexe aqui seu banco e o código utilizado que explicaremos.


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

    Respeito às Regras 50%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1467
    Registrado : 23/01/2018

    [Resolvido]Função DLOOKUP Empty [Resolvido]Função DLOOKUP

    Mensagem  crysostomo em 20/8/2019, 18:47

    drive.google.com/open?id=16fsDSCx7Yn62vOgdiZXNPrI3plmfH-14


    .................................................................................
    Uma mão ajuda a outra.
    Feliz aquele que transfere o que sabe e aprende o que ensina.
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

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

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  DamascenoJr. em 21/8/2019, 01:40

    Abra o formulário e clique no botão entrar e veja o passo a passo da função. Mas explicado que isso não tem como.
    Anexos
    [Resolvido]Função DLOOKUP Attachmentdlookup.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (51 Kb) Baixado 36 vez(es)


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

    Respeito às Regras 50%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1467
    Registrado : 23/01/2018

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  crysostomo em 27/9/2019, 03:21

    revolvido


    .................................................................................
    Uma mão ajuda a outra.
    Feliz aquele que transfere o que sabe e aprende o que ensina.
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

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

    [Resolvido]Função DLOOKUP Empty Re: [Resolvido]Função DLOOKUP

    Mensagem  DamascenoJr. em 27/9/2019, 13:49

    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: 4/12/2020, 05:10