Pasos a seguir para guiarnos mejor los dos.
1. Creamos un modulo (pegamos el código de abajo
'.............................................................................................
Public Function numerarSQL(nDato) As Long
'variable que no se pierde entre las distintas llamadas
Static nORDEN As Integer
If IsNull(nDato) Then 'si nDato es nulo: variable a cero y salida
nORDEN = 0
Exit Function
End If
nORDEN = nORDEN + 1
numerarSQL = nORDEN
End Function
'.............................................................................................
2, lo guardamos con cualquier nombre
3, creamos una consulta con la tabla a enumerar, si quieres poner todo los datos los pones.
4, eleige un campo por ejemplo resultado
5, Coia el nombre result en el portapapeles y en su lugar escribes
RegNum:numerarSQL(Resultado)
6, graba la consulta
7, Abrimos la consulta en modo edición, en el menu ver, veras que pone SQL, presiona el botón Te saldrá la select de la consulta, un ejemplo.
---------------------------------------------------------------------------------------------------------
SELECT CuentaCL.Result, CuentaCL.Material, CuentaCL.FIFO, CuentaCL.Albarán, CuentaCL.Cantidad, CuentaCL.Proveedor, CuentaCL.Numerador, CuentaCL.CodeRT, CuentaCL.Retenido, numerarSQL([Resultado]) AS RegNum, *
FROM CuentaCL;
------------------------------------------------------------------------------------------------------
Si te fijas al final el registro cambiado se llama As RegNum, ¿Ok?
8 vete al final del código de la select y presiona enter para hacer un salto del carro.
9 Escribimos lo siguiente
UNIÓ
10, pr3sionamos enter para avance del carro
11 A continuación hay que poner los datos de la consulta de arriba pero... sólo escogeremos RegNum.
SELECT numerarSQL(Null), * FROM CuentaCL WHERE 1=0;
CuentaCL es el nombre de ambas consultas, lo que se trata es de hacer una unión entre ellas.
El código te ha de quedar así.
SELECT CuentaCL.Result, CuentaCL.Material, CuentaCL.FIFO, CuentaCL.Albarán, CuentaCL.Cantidad, CuentaCL.Proveedor, CuentaCL.Numerador, CuentaCL.CodeRT, CuentaCL.Retenido, numerarSQL([Resultado]) AS RegNum, *
FROM CuentaCL;
UNION
SELECT numerarSQL(Null), * FROM CuentaCL WHERE 1=0;
Finalmente guardas la consulta como el nombre que tu quieres, cada vez que la ejecutes te enumerará los registros de 1 hasta los que tengas.
Espero haber sido claro.
Un saludo,
-------------------------------------------------------------------
Aplicaciones a medida y Proyectos en Access VBA
Pedir presupuesto
[email protected]