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] J'peux pas déprotéger mes feuilles.


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    309
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2002
    Messages : 309
    Points : 396
    Points
    396
    Par défaut [VBA E] J'peux pas déprotéger mes feuilles.
    Bonjour,

    Dans un classeur d'une dizaine de feuilles, j'en protège 4 par en codant.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
            motpass = motpass1 + "Data"
            Application.Worksheets("Data").Protect (Password = motpass)
            Application.Worksheets("Data").Protect (Contents = True)
     
            motpass = motpass1 + "Base"
            Application.Worksheets("Base").Protect (motpass)
            Application.Worksheets("Base").Protect (Contents = True)
     
            motpass = motpass1 + "Impression"
            Application.Worksheets("Impression").Protect (Password = motpass)
            Application.Worksheets("Impression").Protect (Contents = True)
     
            motpass = motpass1 + "BaseAg"
            Application.Worksheets("BaseAg").Protect (Password = motpass)
            Application.Worksheets("BaseAg").Protect (Contents = True)
    Puis, selon le cas, je déprotège les feuilles par le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
            motpass = motpass1 + "Base"
            Application.Worksheets("Base").Unprotect (motpass)
     
            motpass = motpass1 + "Data"
            Application.Worksheets("Data").Unprotect (motpass)
     
            motpass = motpass1 + "Impression"
            Application.Worksheets("Impression").Unprotect (motpass)
     
            motpass = motpass1 + "BaseAg"
            Application.Worksheets("BaseAg").Unprotect (motpass)
    Seul la feuille "Base" est déprotégée.

    Cela ne vient pas du code car c'est un copie collé ou seul les nom des feuilles ont changé.
    Ce n'est pas sur les feuilles car lorsque je texte avant de lancer mon code tout marche bien.
    Je n'ai pas de code dans mes feuilles.
    Je lance le code de protection et de déprotection depuis une feuille qui n'est pas une des feuilles protégée.

    Je suis sur Office 2003 pro et 2000 pro

    Bref, je ne sais plus quoi penser.

    Merci

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    relis ton code ... la feuille base est la seule qui n'est pas protégé comme les autres...!
    d'ailleurs fonctionne-t'il ce code de protection ..?

  3. #3
    Membre averti
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    309
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Mai 2002
    Messages : 309
    Points : 396
    Points
    396
    Par défaut
    Oups ! je suis vraiment désolé. J'ai le nez dessus et je n'ai rien vu.

    Ce code marche et merci à toi bbil pour ton aide.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
     
         consult = "mpdeconsult"
         admin = "mpdeadmin"
         motpass1 = "ferme"
     
         If passeport <> consult And passeport <> admin Then
             rep = MsgBox("Vous n'avez pas l'autorisation d'utiliser ce classeur", vbCritical, "Mot de passe")
             Workbooks("monfichier.xls").Close SaveChanges:=False
     
         End If
     
         If passeport = consult Then
     
            motpass = motpass1 + "Data"
            Application.Worksheets("Data").Protect (motpass)
            Application.Worksheets("Data").Protect (Contents = True)
     
            motpass = motpass1 + "Base"
            Application.Worksheets("Base").Protect (motpass)
            Application.Worksheets("Base").Protect (Contents = True)
     
            motpass = motpass1 + "Impression"
            Application.Worksheets("Impression").Protect (motpass)
            Application.Worksheets("Impression").Protect (Contents = True)
     
            motpass = motpass1 + "BaseAg"
            Application.Worksheets("BaseAg").Protect (motpass)
            Application.Worksheets("BaseAg").Protect (Contents = True)
     
         End If
     
         If passeport = admin Then
     
            motpass = motpass1 + "Base"
            Application.Worksheets("Base").Unprotect (motpass)
     
            motpass = motpass1 + "Data"
            Application.Worksheets("Data").Unprotect (motpass)
     
            motpass = motpass1 + "Impression"
            Application.Worksheets("Impression").Unprotect (motpass)
     
            motpass = motpass1 + "BaseAg"
            Application.Worksheets("BaseAg").Unprotect (motpass)
     
            Sheets("Ouverture").Select
     
         End If

    passeport est le mot de passe de l'utilisateur entré avec une form

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

Discussions similaires

  1. [TinyMCE] Je ne peux pas éditer mes news
    Par Rivaa0 dans le forum Bibliothèques & Frameworks
    Réponses: 6
    Dernier message: 03/05/2014, 13h36
  2. Je ne peux pas corriger mes fautes d'orthographe (commentaire blog)?
    Par lepinekong dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 1
    Dernier message: 06/01/2010, 21h39
  3. [VBA-E97]Code pour déprotéger une feuille de calcul
    Par blaiso dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 19/04/2007, 11h30
  4. [VBA-E] Déprotéger une feuille
    Par steps5ive dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 28/03/2007, 18h59
  5. [VBA-E] Verifier qu'un nom de feuille n'est pas utilisé
    Par Elstak dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 31/03/2006, 09h19

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