Campo numérico Autonumerar en access 2003

Buen día Nuevamente yo, No se si recuerdes que en mi aplicación de cotización tengo un campo llamado partidas, este se encuentra en un subformulario en vista hoja de datos y. Una cotización puede tener varias partidas, y lo que quiero es agregar un número de partida de manera automática, es decir, que a cada renglón de cada cotización le aparezca:

1

2

3

". Y al dar de alta una nueva cotización, empiece de nuevo en "1".

Lo intente poniéndole partida=partida +1 pero por lógica cuando empieza con el primer renglón que seria la partida 1 me sale en cero.

Como podría declararle al campo partida para que se vaya autonumerando o incrementando no se como llamarlo?

Respuesta
1

Puedes hacerlo siguiendo el ejemplo de Neckkito "Autonumérico Manual", que para evitar pérdidas de tiempo, en tu caso quedaría así:

Abre tu subformulario cotizacionpartidas, y en el evento al activar registro del formulario, lo pones este código:

Private Sub Form_Current()
Dim vAutonum As Variant, vUltimo As Variant
Dim numCotiz As Integer
numCotiz = Me.Parent.nodecotizacion
vAutonum = Me.partida
'Si vAutonum no es nulo, es porque ya hay valor en partida, entonces salimos del procedimiento
If Not IsNull(vAutonum) Then Exit Sub
'vUltimo es igual al máximo valor de partida para esa cotización
vUltimo = DMax("[partida]", "cotizacionpartidas", "[nodecotizacion]=" & numCotiz)
'Si vUltimo es nulo, es porque no hay ninguna partida, entonces le damos valor 0
If IsNull(vUltimo) Then
vUltimo = 0
End If
'Sumamos 1 al valor anterior
vUltimo = vUltimo + 1
vAutonum = vUltimo
Me.partida.Value = vAutonum
End Sub

Y listo.

Buenas tardes, ya he puesto el código en al activar el registro del subformulario cotización partidas y al abrir el formulario me sale error 94 tiempo de ejecución Uso no valido de Null y me aparece en amarillo al depurar esto: numCotiz = Me.Parent.nodecotizacion


Tengo en el evento al cargar del formulario principal esto:

Form!txtnombre.Value = vNombre
Me.homoclave = Me.nodecotizacion & "-" & Format(Date, "dd.mm.yy")

Ya lo he quitado y aun así sigue saliendo el mismo error??

Ponle numCotiz = Nz(Me.Parent.nodecotizacion,0)


Otro cambio que tienes que hacer es quitarle en la tabla cotizacionpartida el valor predeterminado=0 al campo partida.

EXCELENTE LO HACE ESTUPENDO, Ya casi queda completo ese modulo muchas gracias te haré otra pregunta pero abriré una nueva, excelente fin de semana.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas