RE:Añadir clave correlativa a una consulta
Xion, yo tengo una instrucción que me la enseñó Enrique quien usualmente colabora en este foro y que gracias a ella pude solucionar algunos problemas.
Lo que sí esta instrucción te deja una consulta de unión y por lo tanto no podrás ingresar datos en ella, sólo te servirá para hacer reportes o formularios en base a esta consulta. De todas a,maneras por si te sirve aquí va.
Esto es lo que Enrique me fascilitó:
Primero crea un Módulo nuevo y pega dentro esta Función, sin cambiar NADA y guárdalo con cualquier nombre (Módulo1 por ejemplo):
Public Function Numerador(Campo) As Long
Static Ordenar As Integer
If IsNull(Campo) Then
Ordenar = 0
Exit Function
End If
Ordenar = Ordenar + 1
Numerador = Ordenar
End Function
Ahora creas una nueva Consulta, la abres en diseño, cierras la ventana "Mostrar Tabla" sin seleccionar ninguna y te vas directamente al Menú "Ver / Vista SQL" y ahí pegas esta línea:
Para el ejemplo, la tabla origen tiene cuatro campos: Id, Nombre, Direccion y CodigoPostal y lo adapté para tu caso.
SELECT Tabla.Id, Tabla.Nombre, Tabla.Direccion, Tabla.CodigoPostal, Numerador([NombreCampoTabla]) As NroRegistro
FROM [Tabla]
WHERE (((Tabla.Direccion) Like "TuCondicion"))
ORDER BY Tabla.Direccion;
UNION ALL Select Tabla.Id, Tabla.Nombre, Tabla.Direccion, Tabla.CodigoPostal, Numerador(Null)
From [Tabla] Where 1=0;
Aquí cambias "NombreCampoTabla" por el nombre del primer campo de tu Tabla Origen y "Tabla" por el nombre real de la misma. TuCondición lo reemplazas por la tuya y CampoOrdenamiento por el campo que lo ordenarás. También puedes cambiar "NroRegistro" por otro nombre para el campo numerador, aunque esto es opcional. Ejecuta la consulta de Unión y verás como el primer campo (NroRegistro) numera correlativamente los registros, pero como te dije, no permite actualizaciones, aunque puedes usarla como Origen del registro de Informes y Formularios para visualizar datos.
Espero te sirva.
Saludos
Marcos