Generar nº para facturas en Access 2007

A ver si alguien me puede echar un cable,
Tengo más o menos los mismos clientes cada mes pongamos que unos 40. Facturo siempre el mismo día del mes a todos los clientes. De un mes a otro la variación puede ser 5 clientes que se van y otros 5 nuevos y alguno a los que tengo que facturar algunas horas más o menos según su asistencia. Por lo que de un mes a otro tengo unos 30 que son exactamente igual al anterior.
Tengo una tabla Clientes, en la que junto con todos sus datos personales, están los datos de facturación. Cantidad de horas, tarifa, descuento... Y NumeroFactura. Casi todos ellos son los mismos todos los meses menos NumeroFactura.
He hecho un formulario Facturas, en el que se ve la factura de cada cliente tal cual se va a imprimir, donde hago los pocos cambios necesarios cada mes en cada cliente, pero tengo que cambiar registro por registro el nº de factura.
Una vez modificado tengo una consulta anexar que me agrega las facturas del mes a la tabla Facturas.
-Me gustaría hacer una macro que me pida el nº de la primera factura y a partir de ahí se numeren solas las siguientes para no tener que escribir a mano todos los números de factura cada vez.
-O que automáticamente al entrar en el formulario cada factura tenga ya su número, que sea consecutivo al último registro de la tabla Facturas.
Respuesta
1
En las propiedades del formulario, en la acción Al cargar ---> Procedimiento de evento ---> picas en el cuadrado de la derecha, el de los ... y pones:
Dim db As Database
Dim vFac As Double
Dim rs1 As Recordset
Dim rs2 As Recordset
Set db = CurrentDb
Set rs1 = db.OpenRecordset("Select Max(NumeroFactura) as UltFac From Facturas")
vFac = rs1!UltFac
Set rs2 = db.OpenRecordset("Select NumeroFactura From Clientes")
Do While Not rs2.EOF
vFac = vFac + 1
rs2.Edit
rs2!NumeroFactura = vFac
rs2.Update
rs2.MoveNext
Loop
Me cuentas.
Muchas gracias!
Llevaba bastante tiempo atascado aquí.
Aparte de toda la programación que me has puesto me daba un error por estar la tabla vacía, que he solucionado creando un primer registro con el nº de factura cero, que una vez añadida la primera tanda, he borrado.
Un saludo desde Pamplona,
;-D

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas