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 :

macro pour boite proteger


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
    Décembre 2005
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 139
    Par défaut macro pour boite proteger
    Bonjour à tous
    Je voudrais créer un bouton macro pour ouvrir la boite de dialogue « Protéger la feuille »pour entrer un mot de passe sans passer par la barre d’outils : Révision Protéger la feuille etc.
    Merci d’avance
    Bob

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2010
    Messages
    60
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2010
    Messages : 60
    Par défaut
    Bonjour,

    voici quelques macro fonctionnant ensemble qui permettent de faire ce que tu souhaite :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Function InsererCommandButton(inc As Integer)
     
    Dim oOLE As OLEObject
     
    Set oOLE = ActiveWorkbook.Sheets(inc).OLEObjects.Add(ClassType:="Forms.CommandButton.1", _
            Link:=False, DisplayAsIcon:=False, Left:=550, Top:=8, Width:=75, Height:=25)
     
    oOLE.Name = "NomDuBouton" 
     
    Sheets(inc).OLEObjects(1).Object.Caption = "TexteSurBouton"
     
    End Function
    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
     
    Sub NomDuBouton_Click()
     
    Dim Mdp as string
     
    Mdp = InpuBox("Veuillez entrer le mot de passe pour protéger la feuille", "Titre")
     
    If Mdp = "MotDePasse" then
     
    ActiveSheet.Protect "MotDePasseAuChoix"
     
    ...
     
    End If
     
    End Sub

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 139
    Par défaut
    Merci jeansairien pour ta réponse ultra rapide.
    J'ai copié ton code dans la fenetre vb sur la feuille 1.
    dans cet ordre:
    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
    Function InsererCommandButton(inc As Integer)
     
    Dim oOLE As OLEObject
     
    Set oOLE = ActiveWorkbook.Sheets(inc).OLEObjects.Add(ClassType:="Forms.CommandButton.1", _
            Link:=False, DisplayAsIcon:=False, Left:=550, Top:=8, Width:=75, Height:=25)
     
    oOLE.Name = "NomDuBouton"
     
    Sheets(inc).OLEObjects(1).Object.Caption = "TexteSurBouton"
     
    End Function
     
     
     
     
     
    Sub NomDuBouton_Click()
     
    Dim Mdp As String
     
    Mdp = InputBox("Veuillez entrer le mot de passe pour protéger la feuille", "Titre")
     
    If Mdp = "MotDePasse" Then
     
    ActiveSheet.Protect "MotDePasseAuChoix"
     
     
    End If
     
    End Sub
    J'ai supprimé les trois petits points juste avant le End if,
    j'obtiens la boite de dialogue pour entrer le mot de passe, mais après l'avoir entré, la feuille n'est pas protégée.
    Que manque t-il.
    Merci Bob

  4. #4
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    97
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 97
    Par défaut
    Bonjour bobafric,

    As-tu écrit "MotDePasse" comme mot de passe ? Certainement pas... Je pense que le code doit être modifié ainsi :

    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
    Function InsererCommandButton(inc As Integer)
     
    Dim oOLE As OLEObject
     
    Set oOLE = ActiveWorkbook.Sheets(inc).OLEObjects.Add(ClassType:="Forms.CommandButton.1", _
            Link:=False, DisplayAsIcon:=False, Left:=550, Top:=8, Width:=75, Height:=25)
     
    oOLE.Name = "NomDuBouton"
     
    Sheets(inc).OLEObjects(1).Object.Caption = "TexteSurBouton"
     
    End Function
     
     
     
     
     
    Sub NomDuBouton_Click()
     
    Dim Mdp As String
     
    Mdp = InputBox("Veuillez entrer le mot de passe pour protéger la feuille", "Titre")
     
    ActiveSheet.Protect Mdp 
     
    End Sub

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 139
    Par défaut
    C'est OK pour le nouveau code
    Merci encore à la prochaine
    Bob

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 20/03/2015, 14h12
  2. Macro pour boite de dialogue analyse de particules
    Par kryss01s dans le forum ImageJ
    Réponses: 1
    Dernier message: 27/03/2013, 10h22
  3. macro pour un malloc
    Par salseropom dans le forum C
    Réponses: 4
    Dernier message: 15/02/2006, 11h53
  4. macro pour splashscreen
    Par stoads dans le forum IHM
    Réponses: 20
    Dernier message: 26/11/2005, 13h33
  5. [VBA-E] [help]macro pour dupliquer une feuille (en valeur)
    Par minikisskool dans le forum Macros et VBA Excel
    Réponses: 31
    Dernier message: 07/11/2005, 20h24

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