J'ai peu de feuille, et une nécessité pour une fois qu'une cellule spécifique (A1) est égale à "1" la couleur de l'étiquette devient verte une fois que la valeur de leur changement.excel/VBA passer un nom de feuille à une fonction
Je déclare dans un ThisWorkbook la fonction suivante:
Public Function ColorLabel(LabelName)
Set Foglio = Sheets(LabelName)
Set Target = Foglio.Range("A1")
If Target = "1" Then
Foglio.Tab.ColorIndex = 4
Else
Foglio.Tab.ColorIndex = xlNone
end if
End Function
Ainsi, dans chaque feuille i définir le code suivant
Private function Worksheet_Change(ByVal Target As Range)
ColorLabel(ActiveSheet.CodeName)
end function
mais je reçois l'erreur suivante
Compilation Erreur. Variable attendue ou routine et non forme
Qu'est-ce qui ne va pas?
Quelqu'un m'aider?
Merci!
Vous devez insérer un module 'new' et y placer votre code, plutôt que le module' ThisWorkbook' – CallumDA