Como crear una base datos en Access para llevar la caja diaria

Me gustaría crear una base de datos en Access para llevar la caja diaria.

Los puntos a tener en cuenta sería, fecha, descripción del movimiento, debe, haber y saldo.

1 respuesta

Respuesta
2

Todo depende de tu manejo del código de VB. Vamos a suponer que la tabla se llama Movimientos. Si con ella creas un formulario, da igual único o continuo, en el evento Después de actualizar del cuadro de texto Debe puedes poner

Docmd.setwarnings false(luego te explico)

docmd.runcommand accmdsaverecord

saldo=dsum("nz([debe])-nz([haber])","movimientos")

Lo mismo en el evento Después de actualizar del cuadro de texto Haber

Lo de setwarnings es para que no aparezca la ventanita de "Va a anexar...

¡Gracias!  Voy a probar. Tengo conocimientos pero sin códigos.

Acabo de probar y parece que funciona correctamente. Muchas gracias. Ahora con esto ya podré sacar consultas. Gracias de nuevo.

Tengo hecho el formulario pero en el Saldo no me sale con los decimales, es decir, tengo un ingreso de 3602,28 y pone 3602,00.

En formato he puesto como euro y dos decimales, pero no sale.

¿Cómo se puede poner para que salga con decimales? en debe y haber si sale pero en el saldo no.

gracias

solucionado. ponía la coma del decimal con la coma de escritura en vez de la coma numérica.

Un saludo

Podrías tener un "problema". Supongamos que la tabla tiene un IdLoQuesea y esos campos que citas más arriba y que en el formulario tienes, por ejemplo, 30 registros y por el motivo que sea tienes que borrar uno de ellos. El saldo te quedaría "descuadrado". Lo que yo haría sería poner en el encabezado del formulario un botón, al que llamaremos Actualizar y en sus propiedades-Eventos poner

Docmd.set warnings false

docmd.gotorecord,,acfirst

dim i as integer

for i=1 to form.recordset.recordcount

saldo=dsum("nz([debe])-nz([haber])","movimientos", idloquesea<=" & me.idloquesea & "")

docmd.gotorecord,,acnext

next

Lo que haría, sería ir al primer registro y hacer el cálculo, luego se iría al segundo, y así hasta el final.

Hola,

No sé si lo habré hecho correctamente, He puesto un botón en el encabezado del formulario.

En eventos, al hacer click, he puesto el código que indicas y me sale un error al ejecutarlo:

Private Sub Comando16_Click()
Docmd.set warnings false ---------------------------> aquí sale error: error de compilación, error de sintaxis

DoCmd.GoToRecord , , acFirst

Dim i As Integer

For i = 1 To Form.Recordset.RecordCount

saldo=dsum("nz([debe])-nz([haber])","caja", idloquesea<=" & me.idloquesea & "") -----> creo que también hay error porque sale en rojo

DoCmd.GoToRecord , , acNext

Next

Gracias


End Sub

Lo primero, es que si miras la instrucción que te puse SetWarnings es todo junto. Por otro lado, creo que es mejor que si quieres, repito, si quieres, mándame un mensaje(sólo el mensaje) a [email protected] y te mando un ejemplo. Si lo haces, en el asunto del mensaje pon tu alias José Garrido, ya que si no sé quien me escribe ni los abro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas