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 :

[VBA-E] protection feuille excel


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 24
    Par défaut [VBA-E] protection feuille excel
    Bonjour,
    je protège automatiquement une feuille excel à sa fermeture.
    J'ai une macro:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Worksheets("aa").Protect Password:="bb"
    Ca marche.
    Mais je voudrais également que les cellules protégées ne soient pas sélectionnables. Il faudrait "décocher" automatiquement l'option "Sélectionner les celleules protégées". Je n'ai pas trouvé.
    Merci de votre aide
    MM

  2. #2
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 24
    Par défaut
    Merci pour la réponse,

    Ca fonctionne avec le code LII-B-19 dans une Private Sub_Open
    J'ai maintenant un autre pb:
    Comment protége-t-on une macro (car le mot de passe est dedans)?
    MM

  4. #4
    Membre éclairé
    Avatar de mortalino
    Inscrit en
    Janvier 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Janvier 2007
    Messages : 72
    Par défaut
    Salut,

    tu as possibilité de mettre un mot de passe au projet VBA, soit pour empêcher les modifications, soit pour que le projet ne soit pas du tout visible.

    Pour faire cela, c'est dans l'éditeur VB, le menu Outils, Propriété de VBAProject

    @++

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 24
    Par défaut Ok
    Merci à tous, problème résolu
    Je suis novice en VBA mais je ne comprends pas pourquoi en protègeant la feuille et le classeur, on a encore accès aux macros.
    j'espère m'améliorer
    MM

  6. #6
    Membre éclairé
    Avatar de mortalino
    Inscrit en
    Janvier 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Janvier 2007
    Messages : 72
    Par défaut
    Citation Envoyé par MAGUIN
    "je ne comprends pas pourquoi en protègeant la feuille et le classeur, on a encore accès aux macros."
    pour la simple et bonne raison qu'une feuille, reste une feuille et un projet VBA, c'est encore autre chose.
    Heureusement d'ailleurs que l'on peut dissocier les deux, sinon, dans certains cas, cela peut s'avérer galère.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 24
    Par défaut
    Oui, bien sur, mais il me parraissait logique (à tort sans doute) qu'en verrouillant un classeur, on verrouille aussi les macros.
    Y a peut-etre bien une ligne de code pour faire ça?
    MM

  8. #8
    Membre éclairé
    Avatar de mortalino
    Inscrit en
    Janvier 2007
    Messages
    72
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Janvier 2007
    Messages : 72
    Par défaut
    C'est certainement possible.

    Mais imagine que le mot de passe excel, si tu l'as, dévérouille également le projet, et admettons que le fichier est utilisé par des utilisateurs, non programmeur, qu'ils accèdent au code de VBA, et qu'ils t'effacent (sans le vouloir) une instruction, beh ton code va planter ou ne fera pas ce que ça devait faire à l'origine

    Sinon, en rajoutant cette référence :
    Microsoft Visual Basic for Applications 6.0 Extensibility
    Tu as accès aux composants d'un projet VBA (c'est par là qu'on passe pour effacer du code, en écrire ou supprimer un Module).
    Je pense que par là, il devrait y avoir moyen de coder le mot de passe du projet.

  9. #9
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    24
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 24
    Par défaut
    Bon, avec votre aide, c'est déjà pas mal comme çà.
    Encore merci
    MM

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

Discussions similaires

  1. [VBA] Dissocier des feuilles Excel avec VBA
    Par lezinve dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 02/03/2006, 16h30
  2. [VBA-E]ouvrir feuille excel en lecture seule
    Par ogenki dans le forum Macros et VBA Excel
    Réponses: 21
    Dernier message: 10/02/2006, 13h36
  3. [VBA]Renseigner une feuille excel à partir d'un site web
    Par DonKnacki dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 23/01/2006, 13h43
  4. Protection feuille Excel
    Par GD91 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/12/2005, 15h36
  5. Protection feuille excel
    Par Mystro dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/11/2005, 15h01

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