Bonjour,

Je travaille sur un filtre pour un état et je tiens le bon bout
Mais il me reste une petite chose à corriger.
Voici mon code :

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
 
Private Sub Commande34_Click()
Dim stn As Single
Dim str As String
Dim strDel As String
Dim stnDel As Single
stn = 0
str = "[ID Dossier]>" & stn
 
    If (CDelegataire.Value = -1) Then
    strDel = Forms![Contentieux par critère]![LDelegataire]
    MsgBox (strDel)
    stnDel = "SELECT [Délégataires de gestion].[ID Délégataire] FROM [Délégataires de gestion ] WHERE [Délégataires de gestion].[Nom délégataire]=" & strDel & ";"
        str = str & " & AND [Délégataire] =" & stnDel
    End If
 
    MsgBox (str)
 
    DoCmd.OpenReport "Liste complète en cours", acViewPreview, , str, acDialog
End Sub
Le premier MsgBox me donnant le bon texte et au vu de l'essai que j'ai effectué avec des valeurs directement ainsi que de l'erreur identifiée par Access "Incompatibilité de type" sur la ligne de code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
stnDel = "SELECT [Délégataires de gestion].[ID Délégataire] FROM [Délégataires de gestion ] WHERE [Délégataires de gestion].[Nom délégataire]=" & strDel & ";"
L'erreur est donc sans doute dans cette requête intermédiaire qui devrait me permettre de récupérer l'identifiant correspondant au [Nom délégataire] obtenu correctement dans le premier MsgBox.

Voici le code effectué directement avec les valeurs qui fonctionne très bien :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
Private Sub Commande34_Click()
Dim stn As Single
Dim strDel As Single
stn = 0
strDel = "2"
 
    DoCmd.OpenReport "Liste complète en cours", acViewPreview, , "[ID Dossier]>" & stn & "AND [Délégataire]=" & strDel & "", acDialog
End Sub
Merci d'avance pour votre aide. Je sens que c'est une petite erreur très bête ..
rberniga