Realizar una búsqueda en tres tablas independientes
Tengo tres tablas independientes con sus respectivos formularios tCliente, tProveedor y tObra. He hecho tres consultas sobre las tablas anteriores en las que incluyo dos campos ID y Nombre; y añado un campo calculado para diferenciar las tablas que me añade à la consulta Clientes una "C", Proveedores una "P" y a Obras una "O".
Realizo una consulta de Union, que sirve de base para realizar una búsqueda sobre las tres tablas, el resultado se refleja en un cuadro de lista. Me gustaría que al elegir un elemento en este cuadro de lista, se abriera el formulario asociado a ese elemento: forCliente, forProveedor o forObra.
Me encuentro con ID repetidos, he pensado diferenciarlos añadiendo un campo calculado que una las letras y los ID. (C1, P1;O1,C2,...)
Igual, me estoy complicando demasiado.