Bonjour à tous ! Je bloque sur un problème depuis quelques heures et je dois dire que je suis arrivé au bout du bout ... je ne vois vraiment pas d'ou vient le problème ...
J'ai créé une base de gestion de projets composées de :
- 1 table tblProjets
- 1 table tblAgents
- 1 table de jonction tblJoncProjetsAgents
Les formulaires d'affectations de plusieurs agents à un seul projet fonctionnent nickel. Je souhaiterais tirer un état issu de liste de projets ... basé sur la même requête. Jusqu'ici tout marche.
J'aimerais par contre afficher les initiales des agents affectés au projet dans une case de texte dédiée (les initiales de chacun des agents séparés par des tirets ...) :
Je comprend pas pourquoi, mais la requête SQL refuse de prendre en compte mon critère liée au contrôle noautoprojet qui apparaît dans l'état. Si on supprime ce critère tout ce passe bien (il affiche la liste de tous les chefs mais de tous les projets séparés par des tirets mais ce n'est pas ce que je veux). Mais en rajoutant le critère AND du noautoprojet ... -> il me sort les initiales du premier agent de la table tblAgents .... Je ne comprends pas pourquoi ....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 Sub Report_Load() Dim ListeEquipe As Recordset Dim InitCDP As String 'Afficher les initiales du Chef de projet : InitCDP = "SELECT tblJoncProjetsAgents.noautoprojet, tblJoncProjetsAgents.fonctionagent, tblAgents.initiales FROM tblAgents INNER JOIN tblJoncProjetsAgents ON tblJoncProjetsAgents.noautoagent = tblAgents.noautoagent WHERE ((tblJoncProjetsAgents.noautoprojet = " & Me.noautoprojet & " ) AND (tblJoncProjetsAgents.fonctionagent Like 'Chef de projet' ));" 'Création de la liste des initiales des chefs de projet : Set ListeEquipe = CurrentDb.OpenRecordset(InitCDP) If Not ListeEquipe.EOF Then 'Pour vérifier que le jeu d'enreistrement n'est pas vide ListeEquipe.MoveFirst ListeCompleteEquipe = "" While Not ListeEquipe.EOF ListeCompleteEquipe = ListeCompleteEquipe & ListeEquipe("initiales") & "-" ListeEquipe.MoveNext Wend ListeCompleteEquipe = Left(ListeCompleteEquipe, Len(ListeCompleteEquipe) - 1) Else ListeCompleteEquipe = "" 'Pas de chef de projet attribué End If Me.txtequipe.Value = ListeCompleteEquipe End Sub
Une idée ??
Partager