VBA/Excel/Access/Word/Access/Database Protect

Материал из VB Эксперт
Перейти к: навигация, поиск

Protect from mark

   <source lang="vb">

Sub ProtectItFromMark()

   Dim db As Database
   Dim Doc As Document
   Set db = CurrentDb()
   Set Doc = db.Containers("Forms").Documents("frmPassword")
   Doc.UserName = "M"
   Doc.Permissions = dbSecFullAccess And Not dbSecDelete

End Sub

</source>
   
  


Show all permissions

   <source lang="vb">

Sub ShowPerms()

   Dim objContainer As Container
   Dim objDoc As Document
   For Each objContainer In CurrentDb.Containers
       Debug.Print objContainer.Name
       For Each objDoc In objContainer.Documents
           Debug.Print "Document: " & objDoc.Name;
           objDoc.UserName = "Admin"
           Debug.Print "Perms: " & objDoc.AllPermissions
       Next
   Next
   Debug.Print "Done"

End Sub

</source>
   
  


Show delete permission

   <source lang="vb">

Sub ShowNoDelPerms()

   Dim objContainer As Container
   Dim objDoc As Document
   For Each objContainer In CurrentDb.Containers
       Debug.Print objContainer.Name
       For Each objDoc In objContainer.Documents
           If (objDoc.AllPermissions And dbSecDelete) = dbSecDelete Then
               Debug.Print "Can Delete Document: " & objDoc.Name;
               objDoc.UserName = "Admin"
               Debug.Print "Perms: " & objDoc.AllPermissions
           Else
               Debug.Print "Cannot Delete Document: " & objDoc.Name;
               objDoc.UserName = "Admin"
               Debug.Print "Perms: " & objDoc.AllPermissions
           End If
       Next
   Next

End Sub

</source>