Consulta SQL vacía

Estoy utilizando una consulta SQL para realizar búsquedas en una base de datos Access. La consulta es la siguiente:
sql = "SELECT * FROM [Principal]"
sql = sql & " WHERE [Nº Orden] ="& Form_Principal.TextoBuscar.Value
Set F = Forms![principal]
F.RecordSource = sql
Funciona bien cuando existe algún registro que coincide conla búsqueda y actualiza el formulario perfectamente. Sin embargo, si no existe ningún registro coincidente, el formulario se me vacía, se borran todos los controles y no hay forma de recuperarlo.
¿Cómo se hace para detectar que la consulta SQL no devuelve ningún resultado y así poder omitir la actualización del formulario?

1 respuesta

Respuesta
1
una forma fácil sería comprobarlo antes con una instrucción dfirst, sería algo así como
if nz(dfirst("1","principal","[nº orden]=" & form_principal.texto_buscar.value),0)=0 then
msgbox "no hay na de na"
else
set f=forms![principal]
f.recordsource=sql
Endif
Es un poco ineficaz porque hace dos búsquedas, una para comprobar y otra para el formulario, pero debería servirte.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas