sergeszebe
Messages postés180Date d'inscriptionmardi 15 novembre 2005StatutMembreDernière intervention 8 octobre 2009
-
24 janv. 2006 à 15:50
kalobit
Messages postés169Date d'inscriptionmardi 15 juillet 2003StatutMembreDernière intervention 7 avril 2008
-
25 janv. 2006 à 10:37
saluté
je vais une formulaire connection.
j'ai table T_User(login,Nom,Prenom,motdepasse)
l'utilisateur choisit son login dans une zone de liste
il saisit le mot de passe
lorsque celui-ci existe dans la table, sur clic sur le bouton valider le formaulire "F" s'ouvre sinon erreure de mot de passe.
à la 3eme tentive si elle st fausse tout se ferme
pourriez vous m'aider?
kalobit
Messages postés169Date d'inscriptionmardi 15 juillet 2003StatutMembreDernière intervention 7 avril 20082 25 janv. 2006 à 10:37
salut,
tu peux utiliser la fonction VlookUp de vba pour faire une rechercheV dans ta feuile de calcul.
La syntaxe est simple :
Valeur = application.worksheetfunction.vlookup(....)
avec les mêmes argument que recherchev.
Ensuite, utilise une variable publique pour conter les echecs du mot de passe. Quoi Qu'une variable de module suffira amplement.
Je te conseil d'utiliser une fonction pour le test du mot de passe, comme ça, ça clarifiera ton code
ex :
public function TestPassW(Loggin as string, Password as string) as boolean
if application.worksheetfunction.vlookup(Loggin, Range("T_User"), 4,0) = Password then
TestPassW = true
else TestPassW = false
end if
end function
Et dans UserForm
Dim Compteur as integer
private sub CBOK_Click()
If TestPassW(ListBoxLoggin.value, TextBoxPassword.text) = false then
Compteur = Compteur +1
If compteur = 3 then
MsgBox "Vous avez saisi 3 mauvais mot de passe. L'application va se terminer"
thisworkbook.close false
else TextBoxPassword.text = "":textboxpassword.setfocus
end if
else
Worksheets(1).visible = -1
unload me
end if
end sub