This is a really old thread but I'm having the same issue and am confronted with the problem you describe, i.e. if I remove the items from the rowsource then all the existing rows have gone blank. I know I can prevent people from re-using existing selections with code in Before Update as you say but what I'd really like is to remove the options already selected. Do you have any thoughts on that?Based on your query, it looks like the PK to the lookup table is an ID rather than the visible value. If you remove used items, the combo on existing rows will go blank on a continuous form.
Why do you want to remove the already used items? If you want to prevent them from being used, do that with code in the BeforeUpdate event of the combo.