Try moving the below lines to the Form_Current event:
Code:
Dim sSQL as string
sSQL = "Update InvoiceT SET IBalence = " & txtInvBalance
debug.print sSQL
Currentdb.execute sSQL, dbFailOnError
As Colin noted, if it still fails, it's probably because
1. InvoiceT is misspelled or is not a table at all, or IBalance is not a field in that table
2. txtInvBalance holds an invalid value.
3. Ibalance is not a numeric field in the table.
The debug.print should show you the actual value of txtInvBalance being used, as well as you being able to see it on the form.
Edit:
Rereading your posts, I see that the source control name for the update is sometimes txtTempInvBalance and sometimes txtInvBalance. Only one is correct.