This is probably because your lookup column is a real column.
You may prefer turn it into a virtual column, or use an action in order to update the value in the table A.
Here are more informations:
I didn’t retrieve a recent post relating to that, but basically:
virtual columns are calculated on the fly
real columns are calculated only when editing the row
In your case, virtual columns may be the best option.