Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Case à décocher sans mot de passe, mais à coher avec mot de passe

9 réponses
Avatar
Cinémas Décavision
Bonjour et bon dimanche à tous les contributeurs A2k.
Un truc possible ou pas ??? Jai ce code sur une case à cocher (Champ VOIR
dans ma table), afin de caher deux champs nommés Photo et Notes.

Tout fonctionne bien, mais j'aimerai ne pas avoir à mettre le mot de passe
en décochant ou alors à la fermeture de ce formulaire(Moins bien).
Car c'est assez astreignant de mettre ce mot de passe qui m'est d'ailleurs
nécessaire...

Une piste SVP car suis Null en VBA "Bernard"= Is Null

Merci à tous.
Bernard


Private Sub Voir_AfterUpdate()


If InputBox("Password ?") <> "MonMotDePasse" Then
MsgBox "Le mot de passe est faux..."

Exit Sub
End If


Me.NOTES.Visible = Nz(Me.Voir, True)
Me.PHOTO.Visible = Nz(Me.Voir, True)

Requery

End Sub

--
Bernard FANGET Movie Room Manager
Multiplexe Cinema DECAVISION - 7 avenue de Brogny
74000 ANNECY France
Fax : 04 50 52 58 31

pdg@decavision.fr
http://www.decavision.com/

9 réponses

Avatar
Willi2004
Bonjour Bernard.
Tu peux modifier légèrement ton code comme suit:

Private Sub Voir_AfterUpdate()
If Me.Voir = -1 Then
If InputBox("Password ?") <> "MonMotDePasse" Then
MsgBox "Le mot de passe est faux..."
End If
End If
Exit Sub


"Cinémas Décavision" a écrit dans le message de news:
472dcb14$0$25946$
| Bonjour et bon dimanche à tous les contributeurs A2k.
| Un truc possible ou pas ??? Jai ce code sur une case à cocher (Champ VOIR
| dans ma table), afin de caher deux champs nommés Photo et Notes.
|
| Tout fonctionne bien, mais j'aimerai ne pas avoir à mettre le mot de passe
| en décochant ou alors à la fermeture de ce formulaire(Moins bien).
| Car c'est assez astreignant de mettre ce mot de passe qui m'est d'ailleurs
| nécessaire...
|
| Une piste SVP car suis Null en VBA "Bernard"= Is Null
|
| Merci à tous.
| Bernard
|
|
| Private Sub Voir_AfterUpdate()
|
|
| If InputBox("Password ?") <> "MonMotDePasse" Then
| MsgBox "Le mot de passe est faux..."
|
| Exit Sub
| End If
|
|
| Me.NOTES.Visible = Nz(Me.Voir, True)
| Me.PHOTO.Visible = Nz(Me.Voir, True)
|
| Requery
|
| End Sub
|
| --
| Bernard FANGET Movie Room Manager
| Multiplexe Cinema DECAVISION - 7 avenue de Brogny
| 74000 ANNECY France
| Fax : 04 50 52 58 31
|
|
| http://www.decavision.com/
|
|
Avatar
Cinémas Décavision
Super Willi2004, je vais essayer de suite.
Merci à toi et à tout le group access.

Bernard
Bonne soirée.
Avatar
Cinémas Décavision
Re-Bonjour Willi2004,

Cela ne fonctionne pas. Peut-etre j'ai mal expliquée.

La case cochée par défaut donne 2 champs Invisible.
Pour voir ces 2 champs Visibles ont coche et on rentre le password.
mais pour enlever ces deux champs (invisible) on décoche sans pasword.
C'est à dire n'importe qui peut enlever à la vue ces 2 champs, mais seul le
détenteur du mot de pass peut les faire visible.

Merci pour une solution facile ou alors devrais mettre un bouton à bascule
appuyé d'un coté avec password et l'autre coté sans password...

Merci à tous.
Bernard

--
Bernard FANGET Movie Room Manager
Multiplexe Cinema DECAVISION - 7 avenue de Brogny
74000 ANNECY France
Fax : 04 50 52 58 31


http://www.decavision.com/
Avatar
Michel_D
Re-Bonjour Willi2004,

Cela ne fonctionne pas. Peut-etre j'ai mal expliquée.

La case cochée par défaut donne 2 champs Invisible.
Pour voir ces 2 champs Visibles ont coche et on rentre le password.
mais pour enlever ces deux champs (invisible) on décoche sans pasword.
C'est à dire n'importe qui peut enlever à la vue ces 2 champs, mais seul le
détenteur du mot de pass peut les faire visible.

Merci pour une solution facile ou alors devrais mettre un bouton à bascule
appuyé d'un coté avec password et l'autre coté sans password...

Merci à tous.
Bernard



Utilise une variable globale (en dehors de toute fonction/procédure) qui
reflète l'état coché/décoché et tu teste l'état de cette variable lorsque
tu vérifie s'il faut demander le mot de passe.

Private Sub Voir_AfterUpdate()


If EtatCoche And InputBox("Password ?") <> "MonMotDePasse" Then
MsgBox "Le mot de passe est faux..."

Exit Sub
End If


Me.NOTES.Visible = Nz(Me.Voir, True)
Me.PHOTO.Visible = Nz(Me.Voir, True)

Requery

End Sub

Avatar
Michel_D
Rectification.

Utilise une variable globale (en dehors de toute fonction/procédure) qui
reflète l'état coché/décoché et tu teste l'état de cette variable lorsque
tu vérifie s'il faut demander le mot de passe.

Private Sub Voir_AfterUpdate()

If EtatCoche then
if InputBox("Password ?") <> "MonMotDePasse" Then
MsgBox "Le mot de passe est faux..."
Exit Sub
End If
End if

Me.NOTES.Visible = Nz(Me.Voir, True)
Me.PHOTO.Visible = Nz(Me.Voir, True)

Requery

End Sub
Avatar
Cinémas Décavision
Merci Michel_D,

Mais il me faut plus d'explication, j'ai bien mis ta formule et cela
fonctionne avec le password, mais pour faire comme je demande, il me faut
utiliser une variable et là je coince....
Quoi comme va ariable ??? Et ou la mettre ???
dans la case du haut du module avec ceci ???? :

Option Compare Database
Dim monform As String

Merci de me secourir.
Merci à tout le groupe également.

Bernard
Avatar
Michel_D
"Cinémas Décavision" a écrit dans le message de news:472e2c79$0$5113$
Merci Michel_D,

Mais il me faut plus d'explication, j'ai bien mis ta formule et cela
fonctionne avec le password, mais pour faire comme je demande, il me faut
utiliser une variable et là je coince....
Quoi comme va ariable ??? Et ou la mettre ???
dans la case du haut du module avec ceci ???? :

Option Compare Database
Dim monform As String

Merci de me secourir.
Merci à tout le groupe également.

Bernard


En réfléchissant, même pas besoin de variable globale

Option Compare Database

Private Sub Voir_AfterUpdate()

If Nz(Me.Voir, False) then
if InputBox("Password ?") <> "MonMotDePasse" Then
MsgBox "Le mot de passe est faux..."
Exit Sub
End If
End if

Me.NOTES.Visible = Nz(Me.Voir, True)
Me.PHOTO.Visible = Nz(Me.Voir, True)

Requery

End Sub

Avatar
Cinémas Décavision
SUPER et Merci,
Cela fonctionne parfaitement comme je le voulais.
J'ai fais du copier coller betement, car je ne comprend pas l'astuce qui
permet de mettre le password dans un sens et pas dans l'autre.
Déjà dit, je suis un mauvais....

Merci Michel_D et Merci à tous.

Bernard
Avatar
Michel_D
"Cinémas Décavision" a écrit dans le message de news:47309c48$0$5078$
SUPER et Merci,
Cela fonctionne parfaitement comme je le voulais.
J'ai fais du copier coller betement, car je ne comprend pas l'astuce qui
permet de mettre le password dans un sens et pas dans l'autre.
Déjà dit, je suis un mauvais....

Merci Michel_D et Merci à tous.

Bernard


J'avais pas trop fait attention, mais il faudrait mieux mettre le code
dans l'événement avant mise à jour et annuler l'événement si la saisie
du password n'est pas bonne.

Option Compare Database

Private Sub Voir_BeforeUpdate(Cancel As Integer)

If Not(Nz(Me.Voir, False)) then
if InputBox("Password ?") <> "MonMotDePasse" Then
MsgBox "Le mot de passe est faux..."
Cancel = True
Exit Sub
End If
End if

Me.NOTES.Visible = Nz(Me.Voir, True)
Me.PHOTO.Visible = Nz(Me.Voir, True)

Requery

End Sub