Quiero que el primer registro de un autonumérico parta de cero y no de uno, y como hago para resetiar y que empiece de nuevo el contador
1 Respuesta
Respuesta de felixau
1
1
felixau, Programador y diseño de Utilidades ofimáticas en Acces
Bueno primero tu campo que desees numerar así debe de ser de tipo Numero y NO Autonumérico. Luego en el formulario en la vista de diseño elige Propiedades del formulario y en en la Propiedad("Evento") "Al activar registro" selecciona Procedimiento de evento. Ahí mismo abre la ventana de código (pincha en el cuadradito de la derecha con tres puntitos) y te aparecerá la ventana de código. Justo de donde te aparezca el cursor debajo de Private Sub Form_Current() 'Pega este código cambiando el nombre de ID por el de tu campo numérico y NombreTabla por el de la tabla de donde procede el campo numerico. If Me.NewRecord Then On Error Resume Next Me.ID.DefaultValue = Nz(DMax("[ID]", "NombreTabla"), 0) + 1 End If End Sub Este código lo que hace es numerar los registros según el número mayor anterior que has introducido. Para poner a cero todos los números ejecuta una consulta de Actualización cuyo valor sea igual al que tienen -1. Esto se hace en Vista de diseño de una consulta y seleccionando la consulta ariba en el menú como de actualización arrastras el campo numérico a la cuadrícula de diseño y luego donde pone actualizar pones [ID] = [ID]-1 La ejecutas y ya está . No te olvides de dos cosas, primero haz una copia de tu BD y luego antes de hacer esto cambia el tipo de dato de ID de Autonumérico a Numero.