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 :

Barre d'outil excel


Sujet :

Macros et VBA Excel

Vue hybride

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 31
    Par défaut Barre d'outil excel
    Comment masquer les barres d'outils d'un fichier excel lors de son ouverture en VBA et limiter ainsi l'accès à certaines fonctions sans impacter l'ouverture d'autres fichiers excel.

    Franck

  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
    Le mieux serait d'enregistrer la macro en le faisant.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        Application.CommandBars("Control Toolbox").Visible = False
    Masque la barre d'outils "Commandes"

    Pour toutes les masquer, tu as

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    For Each LaBarre In Application.CommandBars
        'If LaBarre.Name = "Control Toolbox" Then
            LaBarre.Visible = False
        'End If
    Next
    Pour tester le nom de celle/celles que tu veux masquer, j'ai laissé l'exemple

    A+

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 290
    Par défaut
    Bonsoir,
    Si tu veux que se soit à l'ouverture du classeur.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Private sub WorkBook_Open()
    CommandBars(1).Enabled = False
    CommandBars(3).Enabled = False
    CommandBars(4).Enabled = False
    End Sub
    Surtout ne pas oublier de rétablir en quittant le classeur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Private Sub WorkBook_BeforeClose(Cancel As Boolean)
    CommandBars(1).Enabled = True
    CommandBars(3).Enabled = True
    CommandBars(4).Enabled = True
    End Sub
    jpleroisse

  4. #4
    Tan
    Tan est déconnecté
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 168
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sans impacter l'ouverture d'autres fichiers excel
    Si tu masques les barres à l'ouverture du classeur, et que tu les raffiches à l'ouverture, alors, si tu as d'autres classeurs d'ouvert avec la même instance d'excel, eux aussi auront les barres masquées.

    Si tu ne souhaites pas masquer pour les classeurs autre que tout appli, tu peut faire un masquage et un affichage sur les évènement workbookActivate et workbookDesactivate.

    Ainisi, les changement auront lieu que pour ton classeur

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 290
    Par défaut
    Re,
    Erreur dans mon code,
    Il faut ajouter Application. devant les commandBars.
    (Application.CommandBars(1).Enabled = False)

    Tan, mon code rétablit les Commandbars au momment de quitter le classeur, celà n'a donc aucune incidence sur les autres classeurs.

    jpleroisse

  6. #6
    Tan
    Tan est déconnecté
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    168
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 168
    Par défaut
    celà n'a donc aucune incidence sur les autres classeurs.
    Sauf, si tu ouvres plusieurs classeurs en même temps (c'est juste pour ça ma note).

    En fait, si tu ouvres un classeur quelconque, puis que tu ouvres le classeur qui masque les barres, alors, tu as dans ton application excel 2 classeurs d'ouverts.

    Les barres étant dépendantes de l'application et non du classeur, la barre est masquée pour ton classeur mais aussi pour le "quelconque".

    Les barres du fichier "quelconque" vont réapparaitre si tu fermes l'autre classeur, mais si tu passes de l'un a l'autre sans fermer, là, il n'y a jamais la barre.

    Parfois, ça peut être désagréable de perdre des fonctions sur les autres classeurs où la limitation est inutile.

    C'est pourquoi j'ai parlé des évènements activate et desactivate qui en plus de ce déclencher à l'ouverture et à la fermeture, se déclenchent quand tu passes d'un classeur à l'autre.

    Cela dit, j'ai parfois eu des problèmes avec le activate (quand le code était important), mais en règle générale ça marche bien pour de petits codes, et je l'utilise quand je crée des menus propres à un classeur (car dans ce cas pouvoir utiliser les nouveaux menus d'un autre classeur, peut carrément être source d'erreur).

    Tan

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 290
    Par défaut
    Re,
    OK Tan, je n'avais pas envisagé l'ouverture de 2 classeurs en même temps.
    mais dans ce cas tu as raison.

    jpleroisse

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 14/06/2011, 09h22
  2. forcer le style barre d'outils Excel 2003 avec Excel 2007
    Par beegees dans le forum Microsoft Office
    Réponses: 4
    Dernier message: 11/05/2008, 09h20
  3. [Excel] personnaliser barre d'outil à l'ouverture d'un classeur
    Par Chewi dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/02/2007, 17h29
  4. [Excel] Nom d'une ComboBox (barre d'outils formulaire)
    Par HanSKruGeR dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 10/01/2006, 18h28
  5. [VBA]Barre d'outils personnalisée excel
    Par fikren dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 02/11/2005, 13h06

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