Je travaille sur une base sur laquelle plusieurs personnes ont travaillé. La
sécurité a été mise en place, puis supprimée (via un fichier .mdw et tout le
toutim), mais du coup il reste chez certains utilisateurs des réminiscences
de droits qui ne sont plus d'actualité.
Je cherche donc à lancer une fonction lors de l'ouverture d'une base, qui
permette de redonner tous les droits d'administration à un utilisateur ou un
groupe, ainsi que de changer le propriétaire.
Et ce, que ce soit sur la base elle-même ou sur les tables liées.
Z'auriez quelques pistes ? (surtout pour changer les droits et le
propriétaire, le reste je m'en arrange.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Toine
Bon, j'ai réussi tout seul.
Pour info, voilà ce que ça donne.
Function Réinitalisation_Sécurité()
Dim mabase As Database Dim moncontainer As Container Dim mondocument As Document Dim i As Integer, j As Integer
Set mabase = CurrentDb For j = 0 To mabase.Containers.Count - 1 Set moncontainer = mabase.Containers(j) Select Case moncontainer.Name Case "Tables", Tables, "Forms", "Reports", "Scripts", "Modules" For i = 0 To moncontainer.Documents.Count - 1 Set mondocument = moncontainer.Documents(i) mondocument.UserName = "Admin" mondocument.Permissions = DB_SEC_FULLACCESS Next i End Select Next j
Set mondocument = Nothing Set moncontainer = Nothing Set mabase = Nothing MsgBox "Terminé"
Dim mabase As Database
Dim moncontainer As Container
Dim mondocument As Document
Dim i As Integer, j As Integer
Set mabase = CurrentDb
For j = 0 To mabase.Containers.Count - 1
Set moncontainer = mabase.Containers(j)
Select Case moncontainer.Name
Case "Tables", Tables, "Forms", "Reports", "Scripts", "Modules"
For i = 0 To moncontainer.Documents.Count - 1
Set mondocument = moncontainer.Documents(i)
mondocument.UserName = "Admin"
mondocument.Permissions = DB_SEC_FULLACCESS
Next i
End Select
Next j
Set mondocument = Nothing
Set moncontainer = Nothing
Set mabase = Nothing
MsgBox "Terminé"
Dim mabase As Database Dim moncontainer As Container Dim mondocument As Document Dim i As Integer, j As Integer
Set mabase = CurrentDb For j = 0 To mabase.Containers.Count - 1 Set moncontainer = mabase.Containers(j) Select Case moncontainer.Name Case "Tables", Tables, "Forms", "Reports", "Scripts", "Modules" For i = 0 To moncontainer.Documents.Count - 1 Set mondocument = moncontainer.Documents(i) mondocument.UserName = "Admin" mondocument.Permissions = DB_SEC_FULLACCESS Next i End Select Next j
Set mondocument = Nothing Set moncontainer = Nothing Set mabase = Nothing MsgBox "Terminé"