Macro Complémentaire

Bonjour,

Est il possible par macro complémentaire :

1) A l'ouverture d'un fichier tester si les différentes feuilles sont protégées si c'est le cas colorier en vert l'onglet et en rouge si le contraire.

2) Changer la couleur de l'onglet quand on clique sur le bouton qui fais protéger ou déprotéger la feuille.

Merci pour votre aide.

Bonjour,

Partie 1 ... à placer dans ThisWorbook ...

Private Sub Workbook_Open()
   Dim Sh As Worksheet

   For Each Sh In Worksheets
      If Sh.ProtectContents = True Then
         With Sh.Tab
            .Color = 255
         End With
      Else
         With Sh.Tab
            .Color = 5287936
         End With
      End If
   Next Sh
End Sub

Partie 2 ... je ne sais pas

ric

Bonsoir RIC

J'avais lancé ce 2eme sujet pour ne pas mettre VBA dans un fichier client.

Cela marche bien comme çà sur des fichiers existants.

J'ai juste un petit soucis quand j’appelle la macro complémentaire sur un fichier que je vais créer, çà plante le code.

Sinon c'est génial

Bonjour,

Ou as-tu mis ton classeur de macro complémentaire. Ou et comment est-il déclaré ?

S'il est nommé en .xlam et déclaré en addins dans les Compléments et coché dans les compléments Excel il n'y a aucune raison que ça plante...

Ceci dit ça n'empêchera pas le VBA dans tes fichiers clients ? Je ne vois pas le rapport avec tes histoires de ribbon et de protection : Dans tous les cas tu devras avoir une (/des) fonctions de callback en VBA...

A+

Bonjour,

J'ai bien créer en .xlam et mis dans adinns.

Cela plante sur excel 2016 quand je veux créer un fichier qui n'existais pas de 0.

Cela marche pour tous les fichiers déjà crée que j'ouvre à nouveau.

Une fois que j'aurais finis de travailler sur le fichier client. Après je lui rends, cela va lui demander mes macros quand il va l'ouvrir?(çà serait pas génial çà mince)

Bonjour,

Quelle procédure as tu enregistré dans ton complément ?

Cdlt.

Bonjour,

Ce code que m'a donné RIC

Private Sub Workbook_Open()

  Dim Sh As Worksheet

   For Each Sh In Worksheets
      If Sh.ProtectContents = True Then
         With Sh.Tab
            .Color = 255
         End With
      Else
         With Sh.Tab
            .Color = 5287936
         End With
      End If
   Next Sh

End Sub
Rechercher des sujets similaires à "macro complementaire"