Bonjour à tous.

J'ai un problème avec une ComboBox qui ne retourne aucune valeur.

Voici les relations:



J'ai creer dans un formulaire une ComboBox qui doit afficher le NumStat et le NomTypStat.
De base j'avais juste fait pour un affichage de NumTypStat et de NomTypStat, donc juste dans la table TypeStatistique.
Là, je veux un jointure et des conditions, comme la date par exemple.
Donc j'ai changer pour le code suivant, sauf que celui ne me retourne aucune valeur.

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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
Private Sub Form_Load()
 
  Dim SQL As String                                             ' Requête SQL utilisée pour remplir la liste des statistiques
 
  ' On constitue la requête SQL pour collecter les données des statistiques
    SQL = "SELECT [Statistique].[NumStat], [TypeStatistique].[NomTypStat] FROM TypeStatistique INNER JOIN Statistique" _
        & "ON [TypeStatistique].[NumTypStat]=[Statistique].[NumTypStat]" _
        & "WHERE YEAR(Date())=YEAR(DateDebutStat)AND MONTH(Date())=MONTH(DateDebutStat)" _
        & "ORDER BY [TypeStatistique].[NomTypStat]"
 
 
  ' Avec la liste déroulante des statistiques :
  With Me.cboStatistique
    ' Deux colonnes
    .ColumnCount = 2
    ' La colonne liée est la première
    .BoundColumn = 1
    ' la largeur de la première colonne est 0cm (colonne cachée)
    .ColumnWidths = "0cm"
    ' La liste est remplie via une requête
    .RowSourceType = "Table/requête"
    ' On affecte la requête SQL à la liste
    .RowSource = SQL
    ' On force son raffraîchissement
    Call .Requery
  End With
 
  ' On gère l'interface :
  ' -------------------
  ' On donne l'activité à une zone fantôme
  Call Me.txtDummy.SetFocus
  ' Et on désactive tous les boutons
  Me.txtDate.Enabled = False
  Me.cmdAnnuler.Enabled = False
  Me.cmdOK.Enabled = False
  Call ActiverFormulaireBas(False)
  Call ActiverFormulaireHaut(False)
End Sub
J'ai aussi écrit la requête dans la partie proprièté de la ComboBox -> Données -> Contenu
En mettant Origine Source sur Table/Requête:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
SELECT [Statistique].[NumStat], [TypeStatistique].[NomTypStat] FROM TypeStatistique INNER JOIN Statistique ON [TypeStatistique].[NumTypStat]=[Statistique].[NumTypStat] WHERE (((Year(Date()))=Year([DateDebutStat])) AND ((Month(Date()))=Month([DateDebutStat]))) ORDER BY [TypeStatistique].[NomTypStat];
Quand j'ai test par l'assistant de création de requête Access dans propriété lorsque j'ai écrit la requête ci-dessus, celle-ci fonctionnait parfaitement.

Ya des moment où je comprend plus trop grand chose
Si vous voyez le problème, je serrais bien content.
Merci d'avance.