Bonjour tout le monde,

J'aimerai avoir votre aide sur ce problème ci:

J'ai un formulaire qui est basée sur une requête. Il est ouvert ouvert en appliquant un filtre. Voici l'instruction d'ouverture
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
stFiltre = saisieValeur(msg, titre)
    If Len(stFiltre) = 0 Then
        MsgBox "Ouverture annulée!"
        Exit Sub
    Else
        stLinkCriteria = "Code_postal LIKE '" & stFiltre & "*'"
    End If
    stDocName = IIf(Me.opgMotif.Value = 1, "Fiches_vierges", "Rappels")
    DoCmd.OpenForm stDocName, , , stLinkCriteria
Voici la requête source de mon formulaire :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
SELECT Entreprises.*, *
FROM Entreprises
WHERE (((Entreprises.Num_serie) Not In (SELECT DISTINCT Entreprise FROM Prospections)));
J'utilise également une fonction qui permet de verrouiller les enregistrement contenus dans le RecordSource de mon formulaire dont je viens de parler ci haut. Voici la fonction :
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
'Vérrouillage de toutes les fiches des entreprises
Private Sub deverrouillage()
    Dim bd As New ADODB.Connection
    Dim rs As New ADODB.Recordset
 
    Set bd = CurrentProject.Connection
    'Ouvrir la table Entreprises
    'rs.Open "Entreprises", bd, adOpenDynamic, adLockOptimistic
    Dim stSql As String
    stSql = "SELECT * FROM Entreprises WHERE " & Me.Filter
    rs.Open stSql, bd, adOpenDynamic, adLockOptimistic
 
    'Verrouiller tous ceux qui satisfond
    'à la condition du filtre
    With rs
        '.Find Me.Filter
        Do Until .EOF
            rs("Verrouille") = Null
            .Update
            .MoveNext
        Loop
    End With
 
    'Fermeture des objets et
    'libération de la mémoire
    rs.Close
    Set rs = Nothing
    bd.Close
End Sub
Le problème est que le formulaire s'ouvre normalement avec les bons enregistrements. Mais ma fonction qui s'exécute lors du chargement des données ne marche pas. La méthode Find du RecordSet ne retourne rien parce que c'est comme si l'exécution sautait la boucle Do Until.

J'ai beau chercher et vérifié mais je n'arrive toujours pas à retrouver où se cache l'erreur.
J'espère avoir été clair dans les explications.
Quelqu'un pourrait-il m'aider à voir ce qui cloche.
Je vous remercie d'avance pour vos interventions.

@omzo