Fonction modifiant valeur d'une autre cellule
Résolu
TonyLucky
-
TonyLucky -
TonyLucky -
Bonjour à tous,
J'ai créé une fonction qui me retourne une valeur, en fonction de valeurs d'autres cellules. Jusque là, pas de souci. Je voudrais ensuite modifier directement le contenu et la couleur de fond d'une autre cellule, selon le résultat obtenu, sans créer une nouvelle fonction.
Je n'ai pas trouvé de réponse à cette question dans les forums.
Voici mon code, et le fichier est en pièce jointe.
D'avance, merci pour vos idées ou solutions.
Tony
Public Function Statut_Anim(Etat01, Etat02, Etat03 As String)
With ActiveSheet
If Etat02 = "Diapo" Then
resultat = "D": couleur = 17
ElseIf Etat01 = "En attente" Then
resultat = "A": couleur = 39
ElseIf Etat01 = "Opérationnel" Then
resultat = "OPS": couleur = 4
ElseIf Etat01 = "Changement Planifié" Then
resultat = "CP": couleur = 46
Else
resultat = "P": couleur = 59
End If
'.Range(Etat03).Value = resultat
'.Range(Etat03).Interior.ColorIndex = couleur
Statut_Anim = resultat
End With
End Function
http://www.cjoint.com/c/FAnoVDVl2iV
J'ai créé une fonction qui me retourne une valeur, en fonction de valeurs d'autres cellules. Jusque là, pas de souci. Je voudrais ensuite modifier directement le contenu et la couleur de fond d'une autre cellule, selon le résultat obtenu, sans créer une nouvelle fonction.
Je n'ai pas trouvé de réponse à cette question dans les forums.
Voici mon code, et le fichier est en pièce jointe.
D'avance, merci pour vos idées ou solutions.
Tony
Public Function Statut_Anim(Etat01, Etat02, Etat03 As String)
With ActiveSheet
If Etat02 = "Diapo" Then
resultat = "D": couleur = 17
ElseIf Etat01 = "En attente" Then
resultat = "A": couleur = 39
ElseIf Etat01 = "Opérationnel" Then
resultat = "OPS": couleur = 4
ElseIf Etat01 = "Changement Planifié" Then
resultat = "CP": couleur = 46
Else
resultat = "P": couleur = 59
End If
'.Range(Etat03).Value = resultat
'.Range(Etat03).Interior.ColorIndex = couleur
Statut_Anim = resultat
End With
End Function
http://www.cjoint.com/c/FAnoVDVl2iV
1 réponse
-
Bonjour,
ColorIndex 56 maxi:
pas de fonction
fichier avec code VBA dans la Feuille:https://www.cjoint.com/c/FAoiKdSxfXf-
Bonjour,
Merci d'avoir pris le temps de regarder ma question et surtout de la réponse précise que vous m'apportez. J'ai testé et cela fonctionne parfaitement, beaucoup plus simple que ce que j'avais pensé faire.
Cependant, comme j'aime bien comprendre, et sans vouloir abuser de votre temps, pouvez-vous m'expliquer :
1) A quoi sert target.count > 1
2) Quelle est l'utilité de worksheet_selection change ? Je l'ai neutralisée et, à priori, cela ne perturbe pas le résultat.
Bonne journée,
Tony
-