DECLARACAO DE VARIAVEL
Estou fazendo uma pesquisa no meu sistema de vb com access dessa forma...
dim vcod as double
vCod3 = (InputBox("Digite o código", "Pesquisa"))
*** Datacadastro.Recordset.FindFirst "cad_num_cli='" & vCod3 & "'"
If Datacadastro.Recordset.NoMatch = True Then
msgbox "Registro não encontrado"
End If
End If
mas ele dah erro na linha com ***
data type mismatch in criteria expression
esse arquivo que dá erro, no access é AutoNumeração. E no VB jah tentei por Interger, Long, Double, String...
E não sei qual é o certo...
Já criei 2 pesquisas no qual deu certo com o mesmo código, mas o tipo de dado no access era Texto....
Desde já agradeço
dim vcod as double
vCod3 = (InputBox("Digite o código", "Pesquisa"))
*** Datacadastro.Recordset.FindFirst "cad_num_cli='" & vCod3 & "'"
If Datacadastro.Recordset.NoMatch = True Then
msgbox "Registro não encontrado"
End If
End If
mas ele dah erro na linha com ***
data type mismatch in criteria expression
esse arquivo que dá erro, no access é AutoNumeração. E no VB jah tentei por Interger, Long, Double, String...
E não sei qual é o certo...
Já criei 2 pesquisas no qual deu certo com o mesmo código, mas o tipo de dado no access era Texto....
Desde já agradeço
Está dando erro pq vc está colocando a variável entre apóstrofo, aà ele vai entender que isto é um texto e não um número
Errado - Datacadastro.Recordset.FindFirst "cad_num_cli='" & vCod3 & "'"
Certo - Datacadastro.Recordset.FindFirst "cad_num_cli = " & vCod3
Beleza!!
Só uma dica, Pare com esse negócio de Usar Data, isso não presta, aprenda a trabalhar com ado com comandos Sql, vc terá muito mais desenpenho, e seus códigos irão ficar bem menores
Errado - Datacadastro.Recordset.FindFirst "cad_num_cli='" & vCod3 & "'"
Certo - Datacadastro.Recordset.FindFirst "cad_num_cli = " & vCod3
Beleza!!
Só uma dica, Pare com esse negócio de Usar Data, isso não presta, aprenda a trabalhar com ado com comandos Sql, vc terá muito mais desenpenho, e seus códigos irão ficar bem menores
verifica se funciona agora,
Dim vcod As String
vcod = InputBox("Digite o Código!", "Código Pesquisa!")
Datacadastro.Recordset.FindFirst "cad_num_cli='" & Val(vcod) & "'"
If Datacadastro.Recordset.NoMatch = True Then
MsgBox "Registro não encontrado"
Else
MsgBox "Achou!"
End If
Dim vcod As String
vcod = InputBox("Digite o Código!", "Código Pesquisa!")
Datacadastro.Recordset.FindFirst "cad_num_cli='" & Val(vcod) & "'"
If Datacadastro.Recordset.NoMatch = True Then
MsgBox "Registro não encontrado"
Else
MsgBox "Achou!"
End If
Citação:ANROCHA escreveu:
Está dando erro pq vc está colocando a variável entre apóstrofo, aà ele vai entender que isto é um texto e não um número
Errado - Datacadastro.Recordset.FindFirst [Ãâ€ÂÂ]cad_num_cli=[à '][Ãâ€ÂÂ] & vCod3 & [Ãâ€ÂÂ][à '][Ãâ€ÂÂ]
Certo - Datacadastro.Recordset.FindFirst [Ãâ€ÂÂ]cad_num_cli = [Ãâ€ÂÂ] & vCod3
Beleza!!
Só uma dica, Pare com esse negócio de Usar Data, isso não presta, aprenda a trabalhar com ado com comandos Sql, vc terá muito mais desenpenho, e seus códigos irão ficar bem menores
funcionou!
valeu cara!
E vou seguir a sua dica... , aliás, vc sabe onde tem uma boa apostila sobre esse assunto?
obrigado!
me manda seu e-mail para mario.gardenal@ig.com.br
se o problema foi solucionado, feche o tópico...
se o problema foi solucionado, feche o tópico...
Tópico encerrado , respostas não são mais permitidas