Petit problème au boulot!

  • Initiateur de la discussion Initiateur de la discussion sandy1230
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

S

sandy1230

Guest
Bonjour,

J'ai regardé beaucoup de forums mais, à force le temps me rattrape et l'heure de fin de journée est vite arrivé sans que je ne m'en aperçois. Alors je m'en tiens à rédiger une discussion qui pourrait m'aider à me sortir de ce pétrin d'Excel.

Mon problème se situe au niveau des macros; c'est devenu un casse-tête chinois ! 😡
En fait, j'ai mis ci-joint un exemple de ma tâche. J'aimerais exécuter une macro dans un bouton qui permettrait d'activer automatiquement les fonds de couleurs de chaque cellule en référence à la feuille de Légende.

Mon but est qu'à chaque fois que j'ajoute une ligne avec les abréviations inscrits en Légende, le fonds de la cellule se met automatiquement en couleurs de référence par le bouton d'activation perçu sur chaque feuille d'Agenda. J'ai pu créer le bouton sur chaque feuille afin que dès que j'appuie dessus, les couleurs apparaissent.

Je ne sais pas si je me fais comprendre mais au moins je me comprends moi-même 😛 .

Pouvez-vous me faire un tutoriel (en détail, svp, parce j'ai perdu mes notions d'études en humanité 😛 ) afin que je puisse activé ce principe?

Merci d'avance.
 

Pièces jointes

Re : Petit problème au boulot!

Bonjour sandy1230, bienvenue sur XLD,

La macro dans Module1 (Alt+F11) :

Code:
Sub Couleurs()
Dim r As Range, cel As Range, i As Variant
Set r = Sheets("Légende").[A:A]
Application.ScreenUpdating = False
For Each cel In ActiveSheet.UsedRange
  If cel.Interior.ColorIndex <> 48 Then '<> couleur grise
    If cel = "" Then
      If cel.Interior.ColorIndex <> xlNone Then cel.Interior.ColorIndex = xlNone
    Else
      i = Application.Match(cel, r, 0)
      If IsNumeric(i) Then cel.Interior.Color = r(i).Interior.Color
    End If
  End If
Next
End Sub
Elle n'est pas bien difficile à comprendre. Application.Match c'est l'équivalent de la fonction EQUIV.

Pour lancer la macro, j'ai mis des boutons de type "formulaire".

Fichier joint.

A+
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour