Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Making sheets visible and hidden to users
Hey there,
I'm a HUGE novice with excel programming, through self-teaching I've covered quite a few simple commands but still there are loads to learn - yay. Anyhoo, I want to be able to control what sheets some of my staff @ work have access to. I can easily make the tabs hidden, but unfortunately most of my staff aren't that simple! What I have so far is a simple userform system which checks payroll numbers and passwords - and their access privilege... What I want to be able to do is say... give level 1 users access to a single "staff" sheet... Give level 2 users access to "staff" and "holiday" sheets... give level 3 users access to "staff", "holiday" and "reports" sheets... I am aware of the Visible, Hidden and VeryHidden variables for sheets - how to use them is the issue... I keep coming up with ideas like... If user_payroll.Value = Reference("PAYROLL1") Then password_form.Show Else MsgBox("Payroll not recognised."), , "Oops!" ---------------------------------------------------------------------------------------------- If user_pass.Value = Reference("PASSWORD1") Then Make Sheets("staff").Visible Else MsgBox("Password not recognised."), , "Oops!" Then on logging out/closing the spreadsheet, the sheet(s) would become VeryHidden again... Any ideas how I can make this work - like I said I'm self taught and I can't find any good learning resources for this - the books I have on excel VBA don't mention anything like this. All input _WILL_ be greatly appreciated! Also - any ideas on how I could instead create a similar system by using an excel spreadsheet as a database then taking all the login details from there would be excellent. thanks, Kai |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Making sheets visible and hidden to users
assumes user_payroll and user_password are textbox names in the respective
userforms. in the OK button click event of the userform that queries for payroll number If user_payroll.Value < Range("PAYROLL1").Value Then MsgBox "Payroll not recognised.", , "Oops!" exit sub Else unload me password_form.Show end if ---------------------------------------------------------------------------- ------------------ in the OK button click event of the userform that queries for password (pasword_form) If user_pass.Value < Range("PASSWORD1") Then MsgBox("Password not recognised."), , "Oops!" else unload me thisworkbook.Unprotect Password:= "ABCD" Sheets("staff").Visible ThisWorkbook.Protect Password:= "ABCD" end if In the Beforeclose event, thisworkbook.Unprotect Password:="ABCD" for each sh in thiworkbook.worksheets if sh.Name < "Welcome" then sh.Visible = xlSheetVeryHidden end if Next Thisworkbook.Protect Password:="ABCD" application.EnableEvents = False thisworkbook.Save Application.enableEvents = True would be basic. Not sure how you intend to implement you levels. I assume it would be progressive and you would get a level, then look a for a password for that level. -- Regards, Tom Ogilvy "Xlyr" wrote in message .uk... Hey there, I'm a HUGE novice with excel programming, through self-teaching I've covered quite a few simple commands but still there are loads to learn - yay. Anyhoo, I want to be able to control what sheets some of my staff @ work have access to. I can easily make the tabs hidden, but unfortunately most of my staff aren't that simple! What I have so far is a simple userform system which checks payroll numbers and passwords - and their access privilege... What I want to be able to do is say... give level 1 users access to a single "staff" sheet... Give level 2 users access to "staff" and "holiday" sheets... give level 3 users access to "staff", "holiday" and "reports" sheets... I am aware of the Visible, Hidden and VeryHidden variables for sheets - how to use them is the issue... I keep coming up with ideas like... If user_payroll.Value = Reference("PAYROLL1") Then password_form.Show Else MsgBox("Payroll not recognised."), , "Oops!" -------------------------------------------------------------------------- -------------------- If user_pass.Value = Reference("PASSWORD1") Then Make Sheets("staff").Visible Else MsgBox("Password not recognised."), , "Oops!" Then on logging out/closing the spreadsheet, the sheet(s) would become VeryHidden again... Any ideas how I can make this work - like I said I'm self taught and I can't find any good learning resources for this - the books I have on excel VBA don't mention anything like this. All input _WILL_ be greatly appreciated! Also - any ideas on how I could instead create a similar system by using an excel spreadsheet as a database then taking all the login details from there would be excellent. thanks, Kai |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Making visible a picture | Excel Discussion (Misc queries) | |||
Making a form visible | Excel Discussion (Misc queries) | |||
making only specified columns visible | Excel Discussion (Misc queries) | |||
making a group visible (or not...) | Excel Programming | |||
Hidden sheets becoming visible after saving from Browser | Excel Programming |