Bonjour tout le monde,

Désolée si mon post recoupe une discussion qui a déjà eu lieu, mais après recherches, je n'ai rien trouvé qui réponde à mon interrogation...

Je travaille sur deux tables de ma base de données pour faire une recherche multi-critères portant sur des champs contenus dans ces deux tables.

La première, contacts, regroupe les coordonnées des individus (id_individu, prénom, nom, adresse, téléphones, etc.) et la seconde, projets, des projets de recherche, chacun appartenant à un domaine scientifique précis et une thématique particulière. J'ai fait deux tables distinctes car certaines personnes peuvent travailler sur deux projets dans des thématiques distinctes.

Pour pouvoir baser mon formulaire de recherche sur une table unique, j'ai tenté de créer une table temporaire qui rassemble les données de mes deux tables de départ, mais j'ai un problème avec les valeurs des champs "domaine" et "thematique" : bien qu'ils soient tous deux de type "texte" dans ma table initiale "projets", ils sont transformés en valeurs numériques dans ma table temporaire de regroupement. ???

J'ai essayé de me servir de l'assistant de requête pour créer ma table et là, les champs sont du bon type, mais je ne comprends pas d'où vient le problème quand je crée la table par VBA directement à l'ouverture du formulaire de recherche : les deux requêtes SQL me semblent identiques (aux champs sélectionnés près, puisque dans mon test via l'assistant de requête, je n'ai pas mis tous les champs voulus pour aller plus vite)...

Je vous mets ci dessous les codes utilisés et j'espère que l'un(e) d'entre vous pourra m'expliquer ce qui cloche...

dans mon formulaire de recherche:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
SELECT contacts.Id_contact, contacts.Titre, contacts.Prenom, 
contacts.Nom2, contacts.Fonction, contacts.Organisme,  contacts.Service, 
contacts.Adresse, contacts.CP, contacts.Ville, contacts.Pays, 
contacts.region_geo,  contacts.telephone, contacts.portable, contacts.fax, 
contacts.[e-mail], contacts.membre_CF, contacts.membre_CSE, 
contacts.type_contact, projets.domaine, projets.thematique, 
projets.[sous-thematique], projets.projet_XXX INTO tbl_all FROM contacts 
LEFT JOIN projets ON contacts.Id_contact=projets.id_contact
où tbl_all est le nom de ma table provisoire

et dans l'assistant de requête :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
SELECT contacts.Titre, contacts.Prenom, contacts.Nom2, contacts.Fonction,
 contacts.Organisme, contacts.Adresse, contacts.CP, contacts.Ville, 
contacts.telephone, contacts.type_contact, projets.domaine, 
projets.thematique, projets.[sous-thematique], projets.projet_XXX FROM 
contacts LEFT JOIN projets ON contacts.Id_contact = projets.id_contact;
les champs qui posent problème sont les champs projets.domaine, projets.thematique et projet.[sous-thematique].
Cela viendrait-il du fait que je les remplis dans le formulaire projet à partir de listes déroulantes (et que donc à un moment ou à un autre, pour Access, ils sont peut-être plus assimilés à un n° dans la liste qu'à leur valeur textuelle) ?

Merci de votre aide, parce que là, je sombre dans des profondeurs extrêmes et je n'apprécie que moyennement de voir des choses qui m'échappent comme cela...