Sub Click(Source As Button) 'データベースの変数の定義 Dim uiws As New NotesUIWorkspace Dim ret As Variant Dim session As New NotesSession Dim db As NotesDatabase Dim acl As NotesACL Dim entry As NotesACLEntry Dim namae As String Dim level As String Dim sbj As String Dim i As Integer '自分のDBとACLをセット ret = uiws.Prompt( 13, "", "" ) If Isempty( ret ) Then Msgbox "データベースは選択されていません。", 0, "データベースの選択" Exit Sub End If Set db = session.GetDatabase( ret(0), ret(1), False ) If db Is Nothing Then Msgbox "データベースがないか、またはアクセス権がありません。", 0 + 16, "データベースの選択" Exit Sub End If Set acl = db.ACL i =0 Set entry = acl.GetFirstEntry 'ACLはDB中にいくつセットされているか分からないので、Do Whileループでentryがなくなるまで繰り返す Do While Not (entry Is Nothing ) i = i + 1 namae = entry.Name 'ChgEntryLevelは自作関数(entry.Levelは数字で返すのでテキストに変換) level = ChgEntryLevel( entry.Level ) sbj = sbj & Cstr( i ) & "." & namae & " , " & level & Chr$(10) '次のACLエントリーを取得する Set entry = acl.GetNextEntry( entry ) Loop Msgbox sbj, 0, ret(2) & "のACL" End Sub Function ChgEntryLevel( level As Integer ) As String 'ACLのレベルは0~6の7段階 Select Case level Case 0: ChgEntryLevel = "[なし]" Case 1: ChgEntryLevel = "[投稿者]" Case 2: ChgEntryLevel = "[読者]" Case 3: ChgEntryLevel = "[作成者]" Case 4: ChgEntryLevel = "[編集者]" Case 5: ChgEntryLevel = "[設計者]" Case 6: ChgEntryLevel = "[管理者]" End Select End Function