Thank you guys, I really appreciate your comments. I guess I figured out the UserForm1 where the 438 error was after creating a new test workbook.
Now I'm facing another run-time error 1004 - Method "visible" of 'object_worksheet' failed
- this is at the actual Workbook where the 2nd macro is applied, the code is:
Private Sub Workbook_BeforeClose(Cancel As Boolean) Dim w As Worksheet
Dim bSaveIt As Boolean
bSaveIt = False
For Each w In Worksheets
If w.Visible Then
Select Case w.Name
Case "Abdi"
w.Protect ("u1pass")
w.Visible = False ---------> this is where the error is
bSaveIt = True
Case "Anisa"
w.Protect ("u2pass")
w.Visible = False ---------> this is where the error is
bSaveIt = True
End Select
End If
Next w
If bSaveIt Then
ActiveWorkbook.CustomDocumentProperties("auth").Delete
ActiveWorkbook.Save
End If
End Sub
Private Sub Workbook_Open()
UserForm1.Show
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.Name <> "Main" Then
If Sh.Name <> ActiveWorkbook.CustomDocumentProperties("auth").Value Then
Sh.Visible = False
MsgBox "You don't have authorization to view that sheet!"
End If
End If
End Sub
The error accord after a user saves and try to close the sheet.