Within a form (NOT a record), a combo box can only have one rowsource at any point in time.
If you change the rowsource as you move from record to record then you change it for the whole form.
If values in other records are not now part of the rowsource data, the records will display nothing in the combo box.
The underlying records are not affected, only what gets displayed.
A common solution to this issue is to use two controls, a combo box for selection and a textbox to display the selected/stored value.
It is sometimes possible to lay these one on top of the other so that you can see the arrow for the combo but it is the textbox that is displaying the value. You can adjust the transparency settings of the combo and use the format command to send to back/bring to front to achieve this.