Good stuff.
In my example I added a button. The button does nothing. It has a clickEvent only to move the cursor out of Box1.
And that allows the afterUpdate event of Box1 to fire, and the proper value to be displayed in Box2.
The me.Recalc is NOT required. I commented it.
Observation: You must physically exit box1 for the afterUpdate event to fire.
Here, attached is the form after clicking the button and below is the button click event code.
Code:
Private Sub btnClickHere_Click()
On Error GoTo Err_btnClickHere_Click
'this does nothing
'it serves only to get out of box1
Exit_btnClickHere_Click:
Exit Sub
Err_btnClickHere_Click:
Resume Next
Resume Exit_btnClickHere_Click
End Sub