IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Sécurité Discussion :

Supprimer le groupe d'un utilisateur en VBA - Sécurité basée sur Access


Sujet :

Sécurité

  1. #1
    Membre éclairé Avatar de miron
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 479
    Par défaut Supprimer le groupe d'un utilisateur en VBA - Sécurité basée sur Access
    Bonjour,

    J'ai trouvé de très bon tuto et faq sur la gestion en vba des utilisateurs et des groupes, comme celui la .

    Cependant, il y a tous les cas de figure sauf le cas où l'on désire supprimer un groupe à un utilisateur.

    Esceque vous sauriez comment, faire, et si oui merci d'avance.

    Cordialement,

    Pierre

  2. #2
    Membre éclairé Avatar de miron
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 479
    Par défaut
    Re,

    Aurais-je oublié de spécifier quelque chose d'important ?
    N'ésitez pas à me demander.

    A+

    Pierre

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 247
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 247
    Par défaut
    Salut,

    Voici la réponse

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Public sub SupprimerUtilisateurDeGroupeDAO (StrNomGroupe as string)
    Dim oWs as DAO.Worrkspace
    Dim oGrp as DAO.Group
    Dim StrUtilisateur as String
     
    'ici le nom de l'utilisateur
    StrUtilisateur=Nom Utilisateur
     
    Set oWs=DBEngine.Workspaces(0)
    Set oGrp=oWs.Group(StrNomGroupe)
    oWs.Users.Delete oGrp.Users(StrUtilisateur)
    End Sub
    Voilà A+

  4. #4
    Membre éclairé Avatar de miron
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 479
    Par défaut
    Merci,

    Mais seulement il y a quelques problèmes :

    Tout d'abord quelques erreurs de frappe, je suppose (à confirmer) :


    Code access : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub SupprGroupe_Click()
    
        Dim oWs As DAO.Workspace
        Dim oGrp As DAO.Group
         
        Set oWs = DBEngine.Workspaces(0)
        Set oGrp = oWs.Groups(Me.ListeGroupes.ItemData(Me.ListeGroupes.ListIndex))
        oWs.Users.Delete oGrp.Users(Me.Utilisateurs.Value)
        
    End Sub



    Bien sûr j'ai essayé de l'adapter à mon cas et de le mettre directement dans un SUB.

    Or à la dernière ligne j'ai une erreur de compilation, il me dit qu'il y a une incompatibilitée de type en me surlignant ".Delete".

    Si vous avez des idées ou des remarques/corrections,

    Merci d'avance,

    Pierre

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 247
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 247
    Par défaut
    Re,

    As-tu bien ajouter la référence Microsoft DAO 3.X Object Library ?

  6. #6
    Membre éclairé Avatar de miron
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 479
    Par défaut
    Oui la 3.6. Mon formulaire peut déja ajouter un utilisateur, lui affecter des groupes, pas les supprimer.

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 247
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 247
    Par défaut
    Quel message d'erreur as tu ?

  8. #8
    Membre éclairé Avatar de miron
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 479
    Par défaut
    Re,

    Comme je l'ai dit dans un message plus haut, j'ai le message :
    Erreur de compilation
    Incompatibilitée de type
    L'aide m'amène vers Erreur 13.

    A+

  9. #9
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 247
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 247
    Par défaut
    Mets un point d'arrêt au début de ta procédure et avance pas à pas, regarde bien où l'erreur se passe

  10. #10
    Expert confirmé
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Par défaut
    Bonjour,

    Je n'ai pas Access sous la main, mais il me semble que

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (Me.ListeGroupes.ItemData(Me.ListeGroupes.ListIndex))
    ramène une valeur numérique et non le nom du groupe à supprimer.

    Peut-être simplement avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.ListeGroupes.Column(x)
    L'indice commence à 0.

    Domi2

  11. #11
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 247
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 247
    Par défaut
    En effet, erreur que je n'ai pas vu, je fait + choses à la fois.

    Pourquoi ne pas récupérer le nom du groupe dans une variable et l'utiliser ensuite.

  12. #12
    Membre éclairé Avatar de miron
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 479
    Par défaut
    Bonjour,

    Merci mais je ne peux pas exécuter pas à pas, puisque c'est une erreur de compilation. :-/

    Par ailleurs l'erreur en question se situe bien sur la dernière ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    oWs.Users.Delete oGrp.Users(Me.Utilisateurs.Value)
    Où le paramètre est bien un String.

    Pour ce qui est du nom du groupe, je ne vois pas pourquoi cela serait un int, c'est bien un String, et dans tous les cas j'ai testé via une variable string intermédiaire, mais il ne se passe aucun changement.

    Si vous avez des idées de pourquoi il me dit que sur 'Delete' il y a une incompatibilitée de type je suis preneur.

    Cordialement,

    Pierre

  13. #13
    Expert confirmé
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 65
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Par défaut
    Bonjour,

    Dans l'intervale, j'ai remis la main sur un code, ici.

    A essayer ?

    Domi2

  14. #14
    Membre éclairé Avatar de miron
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    479
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 479
    Par défaut
    Re,

    Merci beaucoup ! Cela focntionne comme sur des roulettes !

    Bonne journée.

    Cordialement,

    Pierre

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/08/2008, 04h33
  2. [VBA-Excel]Supprimer une colonne entiere basee sur une cellule
    Par Tartenpion dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/10/2006, 23h08
  3. Réponses: 2
    Dernier message: 25/07/2006, 10h41
  4. [VB6] Recherche du groupe de l'utilisateur connecté
    Par marsup54 dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 02/02/2006, 15h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo