LeighW:
Sorry for long winded answer. I hope what I say is doable. It seems like you can do everything in access in some way or another.
No need for apologies. You simply provided exactly what I requested you to. Also, you're right about Access. It pretty well can. Within reason of course. I've never seen a program make a cup of tea, but never say never right?
Mostly, getting Access to do what you want just takes a bit of thinking to determine exactly what it is you do want. You'd be surprised how much of the solution comes down to just that. There are other issues too, of course. Designing it once you have the blueprints, but that first step is the most important by far.
I've never used a many-to-many form setup before, but I would consider it sensible to have a linkage set up with referential integrity as a basic requirement. That would mean that the process of entering data would need to be done on a two-pass basis. Enter the underlying data first (Separate forms for each table) and, as a separate process, a linkage form that enables you to create records from two ComboBoxes linked to the PKs of each table.
If a more seamless approach is necessary, then the linkage form could have an option to link to a new record (Each ComboBox could provide that entry) and when either of those is selected the code could open the related data-entry form to allow the operator to enter a new record and then create a link to that new record in the linkage form.
Does that all make sense?