Hola experto, elabore un pequeña base de datos de contabilidad, en access 2003.
Elabore una pequeña base en access 2003, soy Contador Publico y trabajo en Gobierno, la base es de contabilidad, tengo un formulario en el cual registro los datos de la póliza cheque y a su vez un subformulario en el cual registro los asientos contables, el cual tiene los siguientes campos: cuenta, subcuenta, subsubcuenta, descipción de la cuenta, parcial, debe y haber, todos estos campos en mención su origen es una consulta, luego tengo tres campos independientes dentro del subformulario, un campo es la suma de todos los asientos contables del campo debe, otro campo es la suma de todos los asientos contables del campo haber y otro campo el la diferencia entre la suma de todos los asientos del campo debe menos la suma del campo haber, que debe ser 0, a este campo le puse de nombre DIF_p, el problema que tengo es que para que el sistema me avise que la diferencia no es igual a 0, tengo de posicionarme en el campo DIF_p, para que me aparezca el msgbox, lo que yo quiero es que me aparezca automáticamente y que si no corrijo la sumas iguales no me permita salir del registro en el cual me encuentro, te proporciono el evento que si funciona, pero no se que otro cosa le tenga que agregar para que me aparezca el msgbox en forma automática.
Te comento que también ya lo intente en el evento después de actualizar y es lo mismo tengo que clickear el campo DIF_p, para que me aparezca el msgbox.
Private Sub DIF_p_MouseMove(Button As Integer, Shift As Integer, por As Single, Y As Single)
If [DIF_p] > 0 Then
MsgBox "Los montos no son igual a 0"
With Me.DIF_p
.BackColor = vbYellow
.BorderColor = vbRed
.ForeColor = vbRed
.FontBold = True
End With
End If
If [DIF_p] < 0 Then
MsgBox "Los montos no son igual a 0"
With Me.DIF_p
.BackColor = vbYellow
.BorderColor = vbRed
.ForeColor = vbRed
.FontBold = True
End With
End If
End Sub
Por tu atención Experto