Bonjour,

Je suis bloquée sur un syntaxe qui sera sûrement facile pour vous.
J'ai en effet le code suivant qui demande à l'utilisateur d'entrer un mot de passe via un input box et si le mot de passe est correct exécute les lignes de codes. Ce code marche très bien.
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
 
Private Sub Bouton_Click()
Dim rst As DAO.Recordset
Dim sSQL As String ' Ouverture de la base de données
Dim v As Variant
strReponse = InputBox("Veuillez saisir votre mot de passe !!", "Identification")
sSQL = "Select * From table2 where [np]='vo jacques'"
 'open
Set rst = CurrentDb.OpenRecordset(sSQL, dbOpenForwardOnly, dbReadOnly)
'traitement
Do Until strReponse = v
         v = rst![CP]
         rst.MoveNext
    If strReponse = v Then
         sql1 = "Delete * FROM [TAB]"
         DoCmd.RunSQL sql1
         MsgBox " les données ont été exportées"
      End If
Loop 
'close
rst.Close
End Sub
Je souhaiterai par contre dans le cas où le mot de passe est incorrect afficher un msgbox" le mot de passe est incorrect".

Mon souci est que : je ne sais pas où placer le code.

J'ai essayé de le mettre dans la boucle comme suit:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
Do Until strReponse = v
         v = rst![CP]
         rst.MoveNext
    If strReponse = v Then
         sql1 = "Delete * FROM [TAB]"
         DoCmd.RunSQL sql1
         MsgBox " les données ont été exportées"
      End If
  If strReponse <> v Then
   MsgBox" le mot de passe saisi est incorrect"
End if
Loop
Le code marche mais le msgbox " le mot de passe incorrect est affiché plusieurs fois".

Je sais que çà pas ne pas être très claire , je suis disponible pour détailler un peu plus si besoin.

Merci d'avance