Bonjour Sebyg
Voici pour toi un code qui devrait faire l'affaire:
Private Sub CommandButton1_Click()
Dim nbChances As Integer
Static nbEssais As Integer 'variable statique qui garde sa valeur après la fin de la procédure
nbChances = 3
nbEssais = nbEssais + 1
If TextBox1.Value = "boncode" Then
MsgBox "Parfait", vbOK + vbExclamation, "MDP"
Unload Me
Feuil1.Select
ElseIf nbEssais < nbChances Then
MsgBox "Il ne vous reste que " & nbChances - nbEssais & " Essais", vbIgnore + vbCritical
TextBox1.Value = ""
ElseIf nbEssais = nbChances Then
MsgBox "Perdu", vbOK + vbCritical
Unload Me
Feuil3.Select
End If
End Sub
Pour MsgBox, si tu mets des parenthèses avec des vb quelque chose, ça attendra une valeur en retour, si tu enlèves les parenthèses, VBA ne va pas attendre de valeur, tu n'auras pas à mettre de If à tout va