viernes, 2 de agosto de 2013

ROWNUM en ACCESS (solución)

Al parecer muchos han buscado este tema y si bien ya había puesto una posible solución creo no fue la mejor solución para todos.

Pues bueno, creo que esta les funcionará mejor.

Primero, tengo esta tabla:


Así, sin más, solo 2 columnas con datos cualesquiera de tipo texto.


Ahora, en Access creamos 2 funciones públicas:


Declaran esta variable de tipo pública (ID)



Aquí el código para que lo copien y peguen:

Public Function RN(valor As Variant) As Double
    If valor = 1 Then
        ID = 0
        RN = ID
    End If
End Function

Public Function Rownum(valor As Variant) As Double
   ID = ID + 1
   Rownum = ID
End Function

Y solo queda usarlo.... desde código VB el ejemplo:



Bueno, dentro de la función test() hago un primer Select y tal cual me traigo todo de la tabla y lo pinto en la ventana del debug, excepto la primera columna, que el dato no nos sirve para nada pero es necesario para que la función Rownum funcione correctamente.

En el segundo Select hago un filtro por datos y el Rownum que me genera por cada renglón es correcto.

Bueno, este ejemplo es generándolo por código, pero también por consulta en Access


Y el resultado


Pues bueno, espero sea esto lo que realmente necesitan.

Comentarios, mejoras o sugerencias ... 





Translate