Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Oi galera!
Seguinte:
Estou desenvolvendo uma rotina dentro de um banco de dados em Access, aqui, e me encrenquei na utilização de um "findfirst".
Em uma das funções, ele funciona perfeitamente dentro da seguinte lógica:
Dim RS as RecordSet
Set RS = CurrentDB.OpenRecordset("Tabela Clientes")
...
Dim CPF
...
RS.FindFirst "CPF = '" & CPF & "'"
If RS.Nomatch = true then
...
Já em outro, com comandos iguais e uma tabela diferente utilizada, ele não funciona. Já olhei as propriedades do campo e ele está indexado, direitinho, como no que funciona. Mas o Access me retorna o erro "Erro em tempo de execução '3251': Operação não suportada para este tipo de objeto."
Já quebrei minha cabeça aqui e não consegui solucionar. A alternativa que eu saberia fazer era utilizar algo como:
RS.Movefirst
Do Until RS.Fields("Agência") = AGE
RS.MoveNext
Loop
Mas como se tratam de tabelas enormes, essa procura registro por registro torna a rotina demorada ao nível do impraticável.
Alguém sabe me dar a dica para fazer o movefirst funcionar (me dizer o porquê não funciona em uma tabela e em outra funciona), ou alguma alternativa que seja tão ágil quanto?
Obrigado!
[]´s
Carregando comentários...