Votre avis sur mon code VBA svp

peanut -  
 peanut -
Bonjour,

Je voudrais savoir si le code suivant vous paraît correct.

Private Sub Commande49_Click()
On Error GoTo Err_Commande49_Click

Dim stDocName As String
Dim stLinkCriteria As String

stDocName = "Code-Evenement"

'si le formulaire code Evt peut être activé
If SetFocus.Forms!stDocName Is True Then

DoCmd.OpenForm stDocName, , , stLinkCriteria
DoCmd.Maximize

'sinon afficher une boîte de dialogue avec un champ pour entrer le mot de passe
Else:
Dim message, title, defaultValue As String
Dim myValue As Object
' Affiche la demande.
message = "Entrer le mot de passe"
' Définit le titre.
title = "Accès au référentiel"
' valeur par défaut
defaultValue = ""

' Affiche le message, titre et valeur par défaut.
myValue = InputBox(message, title, defaultValue)
' Si l'utilisateur a cliqué sur Annuler, mettre la valeur par défaut
If myValue Is "" Then myValue = defaultValue
' si la personne entre le bon mot de passe
If myValue Is "mypassword" Then
DoCmd.OpenForm stDocName, , , stLinkCriteria
DoCmd.Maximize
Else: msgbox("erreur de mot de passe")

Exit_Commande49_Click:
Exit Sub

Err_Commande49_Click:
MsgBox Err.Description
Resume Exit_Commande49_Click

End Sub
A voir également:

3 réponses

clem285 Messages postés 280 Date d'inscription   Statut Membre Dernière intervention   83
 
test le avec ton compilateur, si il est incorrect, tu le verras de suite
0
peanut
 
Oui bien sûr mais j'ai PEUR - mdr

Une question me démange : est-ce que la ligne

'si le formulaire code Evt peut être activé
If SetFocus.Forms!stDocName Is True Then

est correct ? comment poser comme condition : "si le formulaire a déjà été ouvert" ?
0
peanut
 
cela ne fonctionne pas. il attend une variable ou une fonction.
0