Bonjour,

Je cherche à écrire ce petit bout de code, si quelqu'un veut bien m'aider car je galère pas mal et je n'arrive pas à terminer.

Le formulaire sur lequel je travaille est basé sur une requête que je voudrais modifier en VBA au clic sur un bouton pour n'afficher que les doublons sur le champ "numTitre".
Au deuxième clic sur le bouton, je voudrais que la requête redevienne ce qu'elle était à l'origine.

Mon code actuel est le suivant, il est inachevé après le Else de la ligne 16. Ce qui est avant est correct ? Si quelqu'un veut bien m'aider à terminer ça proprement...
J'ai aussi un Dcount sur ce formulaire pour le nombre d'enregistrements total de la requete, cela peut avoir son importance.

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 btnDoublons_Click()
 
Dim db As DAO.Database: Set db = CurrentDb
Dim qdf As DAO.QueryDef: Set qdf = db.QueryDefs("R_RechercheRecettes")
Dim strSQL As String
 
strSQL = qdf.SQL
 
If Me.btnDoublons.Caption = "VOIR LES DOUBLONS" Then
   Me.btnDoublons.Caption = "MASQUER LES DOUBLONS"
   strSQL = Left(qdf.SQL, Len(qdf.SQL) - 3) & " And (T_CommercesRecettes.numTitre In (SELECT [numTitre] FROM [T_CommercesRecettes] As Tmp GROUP BY [numTitre] HAVING Count(*)>1 ));"
   Me.RecordSource = strSQL
   Me.OrderBy = "numTitre"
   Me.OrderByOn = True
   Me.Requery
Else
   Me.btnDoublons.Caption = "VOIR LES DOUBLONS"
End If
 
End Sub
Merci