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

Macros et VBA Excel Discussion :

verrouiller l'accès à un bouton de commande selon l'utilisateur


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 79
    Par défaut verrouiller l'accès à un bouton de commande selon l'utilisateur
    Bonjour à tous !

    Je viens de réaliser une petite applcation sur excel avec vba et j'en suis à la résolution des conditions d'utilisation.
    A ce sujet, je voudrais vérouiller l'accès de certains bouton de commande (étant affecter à des macros) selon l'utilisateur.
    J'ai essayé de voir ce que je pouvais faire avec les options de sécurité proposées par excel, mais elle verouille toute la feuille, or c'est pas mon but.

    Quelqu'un a une idée ???

    Merci

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Derrière le click du bouton, tu peux vérifier le nom du User avec Environ("USERNAME")
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Sub LeBouton_Click()
    Liste = "Martin, Durant, Durand, Durang, Dupont, Pupond"
    If not instr(Liste, Environ("USERNAME")) <> 0 then exit sub
    'Ton code
    End sub

  3. #3
    Membre éclairé Avatar de zandru
    Homme Profil pro
    Ingénieur conception mécanique
    Inscrit en
    Mars 2008
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur conception mécanique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2008
    Messages : 507
    Par défaut
    Bonjour,

    Tu peux aussi faire à l'activation de ta fenêtre (en réutilisant une partie du code de Ouskel'n'or) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub MaFenetre_Activate()
        Liste = "Martin, Durant, Durand, Durang, Dupont, Pupond"
        If Not InStr(Liste, Environ("USERNAME")) <> 0 Then
            bouton1.Enabled = False
            bouton2.Enabled = False
            ...
        End If
    End Sub

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Oui, par exemple...
    Mais pour être encore plus sectaire, tu peux aussi mettre ça dans Workbook_Open
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Private Sub Workbook_Open()
        Liste = "Martin, Durant, Durand, Durang, Dupont, Pupond"
        If Not InStr(Liste, Environ("USERNAME")) <> 0 Then _
             ThisWorkbook.Close False
    End Sub

  5. #5
    Membre éclairé Avatar de zandru
    Homme Profil pro
    Ingénieur conception mécanique
    Inscrit en
    Mars 2008
    Messages
    507
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur conception mécanique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2008
    Messages : 507
    Par défaut
    Ta solution est peut-être un peu extreme

    j'ai pensé aussi que les utilisateurs pourraient ne pas voir les boutons qu'ils n'ont pas à utiliser :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    Sub MaFenetre_Activate()
        Liste = "Martin, Durant, Durand, Durang, Dupont, Pupond"
        If Not InStr(Liste, Environ("USERNAME")) <> 0 Then
            bouton1.Visible = False
            bouton2.Visible = False
            ...
        End If
    End Sub
    Qu'en pense arkorrigan, le créateur de la discussion ?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    79
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 79
    Par défaut
    Bonjour à vous !

    Vos solutions m'ont l'air très intéressantes...
    D'ailleurs j'opterais bien pour celle de zandru.
    Par contre, comment marche t'elle ?
    J'ai recopié ta solution et en fait je me rends compte que je ne vois pas comment elle peut fonctionner ?
    Elle se met en marche quand tu ouvres le fichier ?
    quand tu ouvres seulement la feuille ?

    Et la fonction Username fait référence au nom d'utilisateur qui est inscrit dans l'ordi ?

    merci de bien vouloir m'éclairer un peu...

Discussions similaires

  1. [XL-2003] Macro selon coordonnées d'un bouton de commande
    Par Neo37 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 29/03/2013, 18h10
  2. [AC-2007] Comment coder les boutons de commandes sous acces 2007
    Par njcom dans le forum VBA Access
    Réponses: 1
    Dernier message: 06/07/2009, 18h37
  3. Réponses: 24
    Dernier message: 14/03/2007, 16h45
  4. [Collaboration/Interaction] Peut-on schématiser une interaction entre un bouton de commande et un autre objet ?
    Par manel007 dans le forum Autres Diagrammes
    Réponses: 5
    Dernier message: 21/09/2004, 02h01
  5. Ajout de bouton de commandes dans la barre de menus
    Par vanessaf22 dans le forum IHM
    Réponses: 9
    Dernier message: 21/07/2003, 12h38

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