まず、ワークブックをパスワードで保護し、ユーザー/権限用のデータベースを作成し、データベース シートを VeryHidden に設定する必要がありますxlSheetVeryHidden
。
データベースの例:
+----------+----------+----------+----------+
| Names | Allow |
+ +----------+----------+----------+
| | Button 1 | Button 2 | Button 3 |
+----------+----------+----------+----------+
| MrJones | 1 | 0 | 0 |
| Makah | 0 | 1 | 0 |
| Seesharp | 1 | 1 | 1 |
+----------+----------+----------+----------+
これで、 がマクロを実行できるかどうかをチェックする checkPermission サブを作成できます。
Function CheckPermission(byVal colIndex as Integer) As Boolean
Dim userName As String, allow As Integer
userName = Environ("USERNAME")
CheckPermission= WorksheetFunction.VLookup(userName, Sheets("DB").[A:D], colIndex, False)
End Function
最後に、このコードをすべてのマクロ内で使用できます。
Sub Button1()
If Not CheckPermission(2) Then
Exit Sub
End If
'Your code here!
End Sub