Affectation d'une couleur a une personne

Bonjour

J'ai trouvé ce petit programme pour gérer les absences.

Dans la feuille "Collaborateurs" se trouvent des personnes avec des codes couleurs. Je voudrais que sur chaque feuille nommée janvier, février, etc.... nous retrouvions les mêmes personnes avec les mêmes couleurs. La couleur irait de la colonne A à D.

Quelqu'un peut il m'aider svp.

Sur ce fichier, il existe un mot de passe déja enregistré : S@pPh1R3

J'aimerais le changer et mettre "chipie"

L'ajout de fichiers joint ne fonctionnant pas, voici le fichier via cjoint

Merci beaucoup

Cdt

Bonjour Fmailys

Pour ce qui est du mot de passe, il est définit en entête du module "ModuleFct"

Public Const VBpassword As String = "S@pPh1R3" 'password de protection du classeur

Il suffit de le changer par celui que tu veux, en ayant pris soin au préalable de supprimer la protection de toutes les feuilles

Sub Déprotection()
  Dim Sht As Worksheet
  For Each Sht In ThisWorkbook.Sheets
    Sht.Unprotect (VBpassword)
  Next Sht
End Sub

Sinon pour appliquer les couleurs sur toutes les feuilles, voici le code

Sub MiseAJourCouleurs()
  Dim Sht As Worksheet
  Dim sForm As String, Lig As Long, LigF As Long
  ' Pour chaque feuille
  For Each Sht In ThisWorkbook.Sheets
    ' Si le nom de la feuille ne contient pas un des termes
    If Sht.Name <> "collaborateurs" And InStr(1, Sht.Name, "récapitulatif") = 0 Then
      ' Pour chaque ligne du planning
      For Lig = 4 To 28
        ' Calcul matriciel pour trouver la ligne du collaborateur
        '=SOMMEPROD((collaborateurs!H3:H27=B4)*(collaborateurs!I3:I27=C4)*LIGNE(collaborateurs!H3:H27))
        sForm = "SUMPRODUCT((collaborateurs!H3:H27=""" & Sht.Range("B" & Lig) & """)*(collaborateurs!I3:I27=""" & Sht.Range("C" & Lig) & """)*row(collaborateurs!H3:H27))"
        ' Calculer le numéro de la ligne trouvée dans la feuille Collaborateurs
        LigF = 0: LigF = Application.Evaluate(sForm)
        ' si la ligne trouver est supérieures à zéro
        If LigF > 0 Then
          ' Mettre la couleur du collaborateur
          Sht.Range("A" & Lig & ":D" & Lig).Interior.ColorIndex = Sheets("collaborateurs").Range("H" & LigF).Interior.ColorIndex
        End If
      Next Lig
    End If
  Next Sht
End Sub

Je te mets le fichier également, au cas ou

A+

Merci

Si je change le mot de passe en "chipie", cela ne fonctionne pas. Pkoi ?

La couleur ne s'applique que sur la feuille Janvier 2013. Je souhaiterais qu'elle s'applique sur toutes les feuilles. Comment dois je faire ?

Les couleurs ne sont pas celles que j'ai mis initialement sur le fichier. Comment retrouver les mêmes couleurs ?

Cdt

Re,

FMAILYS a écrit :

Merci

Si je change le mot de passe en "chipie", cela ne fonctionne pas. Pkoi ?

As-tu lancé le module "Déprotection" avant

FMAILYS a écrit :

La couleur ne s'applique que sur la feuille Janvier 2013. Je souhaiterais qu'elle s'applique sur toutes les feuilles. Comment dois je faire ?

As-tu lancé le code "MiseAJourCouleurs"

FMAILYS a écrit :

Les couleurs ne sont pas celles que j'ai mis initialement sur le fichier. Comment retrouver les mêmes couleurs ?

En lançant le code

Comment je fais

Désolé, je suis novice

Re,

Désolé, je ne suis pas formateur ...

Tu as pleins de tuto à ce sujet, il suffit de chercher sur le net avec notre ami Google

Merci de m'aider

J'ai mis le code déprotection sur ThisWorbook et ça enlève bien la protection.

Faut il aussi que je mette les autres dans ThisWorkbook

Re,

Juste comme ça, le fichier que j'ai joint à mon premier post ... t'a servi à quoi

J'essaie de comprendre.

J'arrive à lire certains codes mais pas tous.

Je travaille dessus mais je suis bloqué au momnt de lancer les codes

Je sèche

Rechercher des sujets similaires à "affectation couleur personne"