UserPermission Object

Microsoft Office Visual Basic

UserPermission Object

Permission UserPermission

The UserPermission object associates a set of permissions on the active document with a single user and an optional expiration date. Represents a member of the active document's Permission collection.

Using the UserPermission Object

Use the Add method of the Permission object to grant specific permissions on the active document to a new user, with an optional expiration date. Use the Remove method of the UserPermission object to remove a user and the user's permissions.

While some permissions granted through the user interface (such as msoPermissionPrint) apply to all users, you can use the UserPermission object to assign them on a per-user basis with per-user expiration dates.

Example

The following example determines whether the active document has restricted permissions, then lists users and their assigned permissions by returning the UserID, Permission, and ExpirationDate properties of each UserPermission in the document's Permission collection.

        Dim irmPermission As Office.Permission
    Dim irmUserPerm As Office.UserPermission
    Dim strIRMInfo As String
    Set irmPermission = ActiveWorkbook.Permission
    If irmPermission.Enabled Then
        For Each irmUserPerm In irmPermission
            strIRMInfo = strIRMInfo & irmUserPerm.UserId & vbCrLf & _
                " - Permissions: " & irmUserPerm.Permission & vbCrLf & _
                " - Expiration Date: " & irmUserPerm.ExpirationDate & vbCrLf
        Next
        MsgBox strIRMInfo, _
            vbInformation + vbOKOnly, "IRM Information"
    Else
        MsgBox "This document is not restricted.", _
            vbInformation + vbOKOnly, "IRM Information"
    End If
    Set irmUserPerm = Nothing
    Set irmPermission = Nothing