bollywood actresses hair loss hair rehab london contact number cheap hair extensions brazilian curly hair with closure hair extension fails human hair wigs black ponytail hairstyles 2018 sunny hair extensions uk hair extensions remy hair extensions weft koko one piece hair extensions clip hair
Consulta não retorna com os valores após filtragem

Consulta não retorna com os valores após filtragem

Nota importante: para ter acesso aos vídeos e arquivos exemplos deste site, adquira um dos planos apresentados abaixo. Você pode comprar em até 2x no Cartão de Crédito. 

Veja como comprar e saiba mais sobre o material oferecido,  clicando aqui.

Open v3

 

Usuário Paulo:

Bom dia.

Estou usando esta consulta em um formulário, com o seguinte critério de filtragem:

Dim StrSQL As String
StrSQL = "SELECT * FROM viewContasPagar WHERE NUMERONF='" & Me!txtBuscaNF & "';"
Me.RecordSource = StrSQL

Porém não retorna nada, mas o número da Nota Fiscal digitada para consultar existe SIM e está na tabela e na consulta, referência do formulário.  Veja na imagem.

Tabela

O Campo NUMERONF é do tipo String.

Suporte:

Paulo, acrescente a caixa de mensagem (parte vermelha) e me diga o que é exibido ao realizar a consulta:

Dim StrSQL As String
msgbox Me!txtBuscaNF
StrSQL = "SELECT * FROM viewContasPagar WHERE NUMERONF='" & Me!txtBuscaNF & "';"
Me.RecordSource = StrSQL

Usuário Paulo:

OK Avelino, inseri a linha conforme me orientou.

Digitei 7 no campo de pesquisa e dei <ENTER>.  Mostrou 7 na caixa de mensagem e depois a minha mensagem de que nada encontrou.  Como teste inseri para um desvio Else a condição de mostrar tudo que tem na consulta, assim:

StrSQL = "SELECT * FROM viewContasPagar"
Me.RecordSource = StrSQL

E me retorna certinho tudo que esta na consulta.

Só não retorna com o critério de filtragem.

Suporte:

Paulo,

você esta comparando 0000000007 (valor na tabela) com 7, e isso é diferente.

Experimente usando a função Val(), que  transformará o valor "0000000007" em 7.

Dim StrSQL As String
StrSQL = "SELECT * FROM viewContasPagar WHERE Val(NUMERONF)=" & Me!txtBuscaNF & ";"
Me.RecordSource = StrSQL

Ou podemos utilizar a função Format() para transformar o valor 7 em "0000000007".

Dim StrSQL As String
StrSQL = "SELECT * FROM viewContasPagar WHERE NUMERONF='" & format(Me!txtBuscaNF,"0000000000") & "';"
Me.RecordSource = StrSQL

Usuário Paulo:

OK Avelino, deu certo!

Pelo que eu entendi, precisava tratar a forma com que o critério fazia a busca na tabela.

Muito Obrigado!


 

 


Não há comentário

Envie seu comentário: