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]Dúvida em DLookUp

    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    [Resolvido]Dúvida em DLookUp Empty [Resolvido]Dúvida em DLookUp

    Mensagem  Cláudio Machado 10/1/2017, 23:30

    Boa noite galera.
    Tô apanhando com este código abaixo:

    If DLookup("[Número_NF]", "FINANC_PAGAMENTOS", "[Número_NF] = '" & Me!Número_NF & "' And Txt_Empresa = '" & Me!Txt_Empresa & "'") Then

    O que ocorre, o campo Número_NF pode ser numérico ou texto, se eu mudo as aspas só funciona com um ou outro como fazer para usar os dois tipos no mesmo campo?

    Obrigado antecipadamente.


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha [Resolvido]Dúvida em DLookUp 90dssg para agradecer a dica que solucionou seu problema.
    hiperjohn
    hiperjohn
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  hiperjohn 10/1/2017, 23:39

    Use critério do tipo texto.
    Para não ocorrer erro quando o campo for numérico, use a função CStr no critério. Essa função converte uma variável em texto, quando for possível:

    If DLookup("[Número_NF]", "FINANC_PAGAMENTOS", "[Número_NF] = '" & CStr(Me!Número_NF) & "' And Txt_Empresa = '" & Me!Txt_Empresa & "'") Then

    Abraçõ!
    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  Cláudio Machado 11/1/2017, 00:27

    Obrigado pela dica amigo.
    Vou testar amanhã e retorno.
    Abraço


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha [Resolvido]Dúvida em DLookUp 90dssg para agradecer a dica que solucionou seu problema.
    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  Cláudio Machado 11/1/2017, 11:21

    Bom dia.
    Não deu certo.
    Se eu digitar texto ocorre erro.


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha [Resolvido]Dúvida em DLookUp 90dssg para agradecer a dica que solucionou seu problema.
    hiperjohn
    hiperjohn
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

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

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  hiperjohn 11/1/2017, 14:56

    Boa tarde.
    Eu suponho que, na sua tabela, o campo [Número_NF] esteja como texto.
    Não entendi o erro. A função CStr converte uma variável em string, mesmo que a variável já seja uma string  Very Happy

    Em todo caso, vc pode colocar um If antes do If.
    Ficaria assim:
       Dim retorno as Variant
       If IsNumeric(Me.Número_NF) Then
           retorno= DLookup("[Número_NF]", "FINANC_PAGAMENTOS", "[Número_NF] = " & Me!Número_NF & " And Txt_Empresa = '" & Me!Txt_Empresa & "'") Then
       Else
           retorno= DLookup("[Número_NF]", "FINANC_PAGAMENTOS", "[Número_NF] = '" & Me!Número_NF & "' And Txt_Empresa = '" & Me!Txt_Empresa & "'") Then
       End If

       If Not IsNull(retorno) Then
           *** o seu código ***
       End If
    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  Cláudio Machado 12/1/2017, 19:37

    Boa tarde.
    Sim o campo na tabela é texto, mas nada feito não funciona...
    Tá brabo, nunca ví nada igual.
    Crying or Very sad


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha [Resolvido]Dúvida em DLookUp 90dssg para agradecer a dica que solucionou seu problema.
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5074
    Registrado : 20/04/2011

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  Silvio 12/1/2017, 19:43

    Apenas um pitaco...
    Coloque as entidades envolvidas para que fique mais fácil te ajudar.
    Disponibilize um exemplo.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  Cláudio Machado 18/1/2017, 12:30

    Bom dia.
    Segue exemplo:
    Anexos
    [Resolvido]Dúvida em DLookUp AttachmentFINANCEIRO_MAXIMO.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (99 Kb) Baixado 24 vez(es)


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha [Resolvido]Dúvida em DLookUp 90dssg para agradecer a dica que solucionou seu problema.
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5074
    Registrado : 20/04/2011

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  Silvio 18/1/2017, 16:23

    Boa tarde...

    Experimente algo assim...
    If DLookup("[Número_NF]", "FINANC_PAGAMENTOS", "[Número_NF]" = Me.Número_NF And Empresa = Me.Empresa And Vencimento = Me.Vencimento) Then
    blá..blá..

    endif


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  Cláudio Machado 18/1/2017, 21:51

    Boa noite Silvio.
    Obrigado por sua ajuda mas...
    Na verdade não acontece nada.
    Não dá erro nenhum e tampouco encontra o registro.
    Nada feito amigo.

    se eu usar assim

    If DLookup("[Número_NF]", "FINANC_PAGAMENTOS", "[Número_NF] = '" & Me!Número_NF & "' and Txt_Empresa = '" & Me!Txt_Empresa & "' And Vencimento = #" & Format(Vencimento, "dd/mm/yyyy") & "#") Then

    e digitar texto no campo Nº do Doc ele acusa erro:

    E se eu usar assim:

    If DLookup("[Número_NF]", "FINANC_PAGAMENTOS", "[Número_NF]" = Me.Número_NF And Empresa = Me.Empresa And Vencimento = Me.Vencimento) Then

    ele grava normal.

    Tá brabo demais...


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha [Resolvido]Dúvida em DLookUp 90dssg para agradecer a dica que solucionou seu problema.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4140
    Registrado : 29/06/2012

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  Noobezinho 18/1/2017, 23:27

    Claudio

    Copie e cole o código abaixo no lugar do teu e experimente:


    Código:

    If DLookup("[Número_NF]", "FINANC_PAGAMENTOS", "[Número_NF] = '" & Me!Número_NF & "' and Txt_Empresa = '" & Me!Txt_Empresa & "' And Vencimento = #" & Format(Vencimento, "dd/mm/yyyy") & "#") Then
           MsgBox "Você já Registrou este Doc. Nº " & Número_NF & " no Sistema." & vbCrLf & "Por favor verifique." & vbCrLf & "Não será possível efetuar a Gravação do Registro.", vbCritical, "Atenção"
        ElseIf IsNull(Me![Txt_Empresa]) Then
            MsgBox "Por favor escolha uma Empresa.", vbInformation, "Crítica de Gravação"
            Me.Empresa.SetFocus
        ElseIf IsNull(Me![TipoPagto]) Then
            MsgBox "Por favor escolha Tipo de Pagamento.", vbInformation, "Crítica de Gravação"
        ElseIf IsNull(Me![Vencimento]) Then
            MsgBox "Digite a Data de Vencimento.", vbInformation, "Crítica de Gravação"
            Me.Vencimento.SetFocus
        ElseIf IsNull(Me![Txt_Tipo_Despesa]) Then
            MsgBox "Por favor escolha um Tipo de Despesa.", vbInformation, "Crítica de Gravação"
            Me.Tipo_Despesa.SetFocus
        ElseIf IsNull(Me![Fornecedor]) Then
            MsgBox "Digite o Nome do Beneficiário.", vbInformation, "Crítica de Gravação"
            Me.Fornecedor.SetFocus
        ElseIf IsNull(Me![Número_Cheque]) Then
            MsgBox "Digite o Número do Cheque.", vbInformation, "Crítica de Gravação"
            Me.Número_Cheque.SetFocus
        ElseIf IsNull(Me![TxtTipoPagto_Conta]) Then
            MsgBox "Por favor Digite o número da Remessa Bancária ou Conta.", vbInformation, "Crítica de Gravação"
            Me.TxtTipoPagto_Conta.SetFocus
        ElseIf IsNull(Me![Número_NF]) Or Me.Número_NF = 0 Then
            MsgBox "Digite o Número do Documento. Não pode ser Zero.", vbInformation, "Crítica de Gravação"
            Me.Número_NF.SetFocus
        ElseIf Valor_NF <= 0 Then
            MsgBox "Digite um valor positivo para o Lançamento.", vbInformation, "Crítica de Gravação"
            Me.Valor_NF.SetFocus
        Else
                Nome = Me![Fornecedor]
                imprime = MsgBox("Confirma o Registro para pagamento do Doc. Nº " & Número_NF & ", no valor de " & Format(ValorLiquido, "currency") & " para " & Fornecedor, vbQuestion + vbYesNo, "Confirmar Registro")
                Select Case imprime
                    Case vbYes
                    
                         If Me.INSS > 0 Or ISS > 0 Or IRPJ > 0 Or PIS > 0 Or Cofins > 0 Or CSSL > 0 Then
                            Me.Imposto = True
                         Else
                            Me.Imposto = False
                         End If
                
                         Me.Lançado_Por_Gravado = True
                         Me.Lançado_Por_Data = Date
                         Me.Lançado_Por = Txt_Usuário
                         Me.Txt_Categoria_NF = "AVULSO"
                         Me.Total_Impostos = Me.SomaImpostos
                         Me.ValorPago = Me.ValorLiquido
                    
                         Me.Bot_Grava_Pagamento.enabled = False
                         Me.Bot_Fechar.SetFocus
                                  
                     If MsgBox("Você deseja Adicionar um Novo Registro ?", vbYesNo + vbQuestion, "Novo Pagamento") = vbYes Then

                        Me.Bot_Grava_Pagamento.enabled = True
                        DoCmd.Close acForm, "FI-CONFIRMA_PAGAMENTO_AVULSO"
                        DoCmd.OpenForm "FI-CONFIRMA_PAGAMENTO_AVULSO"
                     Else
                        DoCmd.Close acForm, "FI-CONFIRMA_PAGAMENTO_AVULSO"
                     End If
        
                Case vbNo
                        DoCmd.CancelEvent
                        MsgBox "Registro Não Foi Efetuado!", vbInformation, "Informando..."
                End Select
        End If


    Entenda o seguinte:
    Se o campo for definido como texto, sempre será texto, por exemplo:

    Retorno:

    "Claudio"

    "12345"

    Veja que mesmo sendo algarismos, será campo texto e não numérico.

    Para comprovar isso, utilize

    ? isnumeric(12345)  

    =true/verdadeiro

    ? isnumeric("12345")

    = False






    [ ]'s


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  Cláudio Machado 19/1/2017, 00:48

    Vou testar amanhã e te passo. Obrigado


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha [Resolvido]Dúvida em DLookUp 90dssg para agradecer a dica que solucionou seu problema.
    Cláudio Machado
    Cláudio Machado
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1636
    Registrado : 17/03/2011

    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  Cláudio Machado 21/9/2017, 22:49

    Esqueci de fechar este tópico.


    .................................................................................
    " Nunca cruze os braços diante de qualquer problema ou dificuldade, pois o maior homem do mundo Jesus,  morreu de braços abertos."

    Agradeça e feche o tópico clicando no botão Resolvido. Se não sabe como, veja  AQUI.
    Não esqueça de clicar no Joinha [Resolvido]Dúvida em DLookUp 90dssg para agradecer a dica que solucionou seu problema.

    Conteúdo patrocinado


    [Resolvido]Dúvida em DLookUp Empty Re: [Resolvido]Dúvida em DLookUp

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/4/2024, 17:08