Campo contador

Buenos días: tengo una tabla con un campo numérico que es el numero de socio de una entidad. Cuando doy de baja a un socio se produce un salto en el contador, es decir si he dado de baja al socio numero 10, al emitir un listado de socios me pasa del 9 al 11. Quisiera que me facilitarais un procedimiento para poder re-enumerar esa tabla de forma que el socio 11 sea ahora el 10, el 12 pase a ser el 11 y así con todos, evitando que se produzcan esos saltos. Gracias.

1 respuesta

Respuesta
1
El problema de los campos autonuméricos es que no se tiene control sobre ellos, por eso es mejor usar campos numéricos. Supongamos que el campo se llama IdSocio, y tienes otro campo Nombresocio. Lo mejor es que en las propiedades del cuadro de texto NombreSocio, en eventos-Después de actualizar, con el generador de código crea un procedimiento de evento y entre Private Sub y End Sub escribe
idsocio=1+nz(dmax("idsocio","nombre de la tabla"))
Así cuando escribas un nombre, el campo Idsocio se verá aumentado en 1.
Para renumerar los idsocio, en el formulario crea un botón de comando y en sus propiedades-eventos-al hacer clic, crea un procedimiento de eventp y escribe
DoCmd. GoToRecord,, acFirst
Dim i As Integer
For i = 1 To Form.Recordset.RecordCount
IdContacto = i
DoCmd.GoToRecord , , acNext
Next
Así, al pulsar el botón empezará a renumerar desde el primer registro hasta el último.
Dee todas formas, si ves que tienes pegas y quieres, dime tu dirección y te mando un ejemplo.
Muchísimas gracias. Me ha funcionado perfectamente. Es justo lo que quería. Ahora lo que quiero hacer es que el mismo botón de comando que me elimina un registro a continuación me recorra la tabla re-enumerándola. Lo voy a intentar, si no me va bien ya te preguntare. Gracias de nuevo

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas