ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Password Form (https://www.excelbanter.com/excel-programming/401875-password-form.html)

Karen53

Password Form
 
Hi,

I'm not sure I can do this. I've been unable to figure out how, but I have
created a password form. I need to use this form to unlock specific cells
and run code depending on the password being correct. I am successful if
there is only one routine the password form is unlocking. I need a value of
true or false to be pulled into multiple routines. I'm thinking a function
but I can't figure out how to achieve it. I'm hung up on where do I go with
cmdOK?

Function GoodPassword(GoodPswd) As Boolean

Dim HasPswd As String

frmPassword.Show

HasPswd = frmPassword.txtGetPswd

Unload frmPassword

GoodPswd = False

If HasPswd = "" Then
GoodPswd = False
Else
If HasPswd = MyPassword Then
GoodPswd = True
End If
End If

End Function


--
Thanks for your help.
Karen53

[email protected]

Password Form
 
On 28 Nov, 21:40, Karen53 wrote:
Hi,

I'm not sure I can do this. I've been unable to figure out how, but I have
created a password form. I need to use this form to unlock specific cells
and run code depending on the password being correct. I am successful if
there is only one routine the password form is unlocking. I need a value of
true or false to be pulled into multiple routines. I'm thinking a function
but I can't figure out how to achieve it. I'm hung up on where do I go with
cmdOK?

Function GoodPassword(GoodPswd) As Boolean

Dim HasPswd As String

frmPassword.Show

HasPswd = frmPassword.txtGetPswd

Unload frmPassword

GoodPswd = False

If HasPswd = "" Then
GoodPswd = False
Else
If HasPswd = MyPassword Then
GoodPswd = True
End If
End If

End Function

--
Thanks for your help.
Karen53


Hi Karen,

Could you not have a sub routine that shows your form, then when a
user enters the password and clicks ok use the on click event of the
command button to test the password, if its correct then close the
form and run all the other code, if its not then close the form and do
nothing? If you need to run multiple routines then run multiple sub
routines when the user clicks ok. You could then just put Option
Private Module at the top of your normal sub procedures so that the
user cant see them and therefore cant run them without first entering
the password.

James

Dave Peterson

Password Form
 
Is the password like a master password--the user enters it once and then they
can access all the routines (well, if they entered it correctly)?

If yes, I'd create a public variable in a General module:

Option Explicit
Public PassWordIsOk as Boolean
Sub firstroutinehere()

passwordisok = goodpassword("mypasswordhere")

'then before you do anything important

if passwordisok = false then
msgbox "Nope!"
else
'do the work
end if
End Sub

Sub SecondRoutineHere()

if passwordisok = false then
msgbox "Nope!"
else
'do the work
end if

End Sub


Karen53 wrote:

Hi,

I'm not sure I can do this. I've been unable to figure out how, but I have
created a password form. I need to use this form to unlock specific cells
and run code depending on the password being correct. I am successful if
there is only one routine the password form is unlocking. I need a value of
true or false to be pulled into multiple routines. I'm thinking a function
but I can't figure out how to achieve it. I'm hung up on where do I go with
cmdOK?

Function GoodPassword(GoodPswd) As Boolean

Dim HasPswd As String

frmPassword.Show

HasPswd = frmPassword.txtGetPswd

Unload frmPassword

GoodPswd = False

If HasPswd = "" Then
GoodPswd = False
Else
If HasPswd = MyPassword Then
GoodPswd = True
End If
End If

End Function

--
Thanks for your help.
Karen53


--

Dave Peterson

Karen53

Password Form
 
Hi,

Thank you both for your help. I don't seem to be able to get my head around
this. I finally solved the issue by using a form label and assigning a value
to it when I called the password form. I then used the label value as my
"Traffic Cop" to route back to the appropriate routine.
--
Thanks for your help.
Karen53


"Karen53" wrote:

Hi,

I'm not sure I can do this. I've been unable to figure out how, but I have
created a password form. I need to use this form to unlock specific cells
and run code depending on the password being correct. I am successful if
there is only one routine the password form is unlocking. I need a value of
true or false to be pulled into multiple routines. I'm thinking a function
but I can't figure out how to achieve it. I'm hung up on where do I go with
cmdOK?

Function GoodPassword(GoodPswd) As Boolean

Dim HasPswd As String

frmPassword.Show

HasPswd = frmPassword.txtGetPswd

Unload frmPassword

GoodPswd = False

If HasPswd = "" Then
GoodPswd = False
Else
If HasPswd = MyPassword Then
GoodPswd = True
End If
End If

End Function


--
Thanks for your help.
Karen53



All times are GMT +1. The time now is 07:25 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com