snasui.com ยินดีต้อนรับ ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
Option Explicit
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim ws As Worksheet
Dim C As Range
For Each ws In Sheets
If ws.Name <> "customer" Then ws.Visible = xlSheetVeryHidden
ElseIf ws.Name <> "ownerroom" Then ws.Visible = xlSheetVeryHidden
ElseIf ws.Name <> "room" Then ws.Visible = xlSheetVeryHidden
ElseIf ws.Name <> "payment" Then ws.Visible = xlSheetVeryHidden
ElseIf ws.Name <> "infrastructuremonthly" Then ws.Visible = xlSheetVeryHidden
Next ws
End If
End Sub
Private Sub Workbook_Open()
Dim user As String
Dim pwd As String
Dim ct As Integer
Dim LR As Long
Dim C As Range
LR = Sheets("Login").Cells(Rows.Count, "A").End(xlUp).Row
user = InputBox("Enter your UserName")
Set C = Worksheets("Login").Range("$A1:$A" & LR).Find(user, LookIn:=xlValues)
If C Is Nothing Then
MsgBox "Unauthorized to proceed"
Me.Close
End If
ct = 2
retry:
pwd = InputBox("Enter Password")
If pwd <> Sheets("Login").Cells(C.Row, 2) Then
If ct = 0 Then
MsgBox "Out of tries"
Me.Close
End If
MsgBox "Wrong Password." & Chr(10) & "You have " & ct & " tries left"
ct = ct - 1
GoTo retry
End If
Dim ws As Worksheet
For Each ws In Sheets
If ws.Name <> "customer" Then ws.Visible = xlSheetVeryHidden
ElseIf ws.Name <> "ownerroom" Then ws.Visible = xlSheetVeryHidden
ElseIf ws.Name <> "room" Then ws.Visible = xlSheetVeryHidden
ElseIf ws.Name <> "payment" Then ws.Visible = xlSheetVeryHidden
ElseIf ws.Name <> "infrastructuremonthly" Then ws.Visible = xlSheetVeryHidden
Next ws
End If
End Sub