Scusate se mi inserisco, nella discussione, la soluzione potrebbe essere una tabella con i nomi che viene riempita da una query di accodamento.
Mi spiego meglio, quando lavori in una delle tre maschere, maschera A, hai la casella combinata con la lista dei nomi già utilizzati, come Pinco Palla, se devi inserire Pinco Palla lo scegli e basta, se il nome é nuovo tipo Paolo Bianchi, lo digiti e lo memorizzi nel campo nomeA.
La casella combinata é riferita al campo nometutti di una tabella a parte, che chiameremo Nomi.
La maschera B e la maschera C avranno a loro volta i campi nomeB e nomeC e la casella combinata attingerrá sempre a nometutti di Nomi.
All'apertura di ciascuna maschera possono essere lanciate in automatico tre query di accodamento che accodamento che accodano nomeA di tabellaA, nomeB di tabellaB e nomeC di tabellaC. Per evitare ridondanza di dati può essere creata una query di cancellazione che pulisce la tabella prima degli accodamenti. Ciascuna query viene fatta in modo che Pinco Palla sia accodato una sola volta per query.
A questo punto se chiudo la maschera A e apro la B, l'apertura avrà come evento l'accodamento e Paolo Bianchi comparirà nell'elenco dei nomi.
Il gruppo di query può essere lanciato anche con un pulsante, se ci occorre aggiornare la lista senza chiudere e aprire alcuna maschera
Possiamo accodare anche altri dati che visualizziamo nella casella combinata senza poi memorizzarli nel campo, tipo accanto a Pinco Palla nella tendina della casella combinata posso leggere cs oppure cc oppure fa che stanno per critica storica, critica contemporanea o fonti archivistiche.
Io uso molto le query di cancellazione e accodamento, anche con migliaia di dati e non ho problemi. Ovviamente va disabilitata la richiesta di conferma. Nel tuo caso, una volta scritto il codice, lavoreresti passando da una maschera all'altra dimenticando che puliscono e aggiornano la tua tabella.
Spero di essere stato utile e di aver capito il problema.