Appliquer formule en fonction de la couleur d'une cellule
Fermé
Bonsaiblue
Messages postés
3
Date d'inscription
lundi 23 novembre 2020
Statut
Membre
Dernière intervention
24 novembre 2020
-
24 nov. 2020 à 14:52
dabuek Messages postés 15 Date d'inscription jeudi 4 février 2016 Statut Membre Dernière intervention 3 janvier 2023 - 14 déc. 2020 à 10:50
dabuek Messages postés 15 Date d'inscription jeudi 4 février 2016 Statut Membre Dernière intervention 3 janvier 2023 - 14 déc. 2020 à 10:50
A voir également:
- Appliquer formule en fonction de la couleur d'une cellule
- Excel cellule couleur si condition texte - Guide
- Formule excel pour additionner plusieurs cellules - Guide
- Fonction si et - Guide
- Aller à la ligne dans une cellule excel - Guide
- Excel formule couleur cellule - Guide
1 réponse
dabuek
Messages postés
15
Date d'inscription
jeudi 4 février 2016
Statut
Membre
Dernière intervention
3 janvier 2023
14 déc. 2020 à 10:50
14 déc. 2020 à 10:50
Bonjour,
Si je comprends bien votre problème, il faut utiliser une fonction If pour appliquer l'une ou l'autre formule, exact ?
Dans ce cas, comme il n'existe pas sous Excel (j'ai 2019 mais je ne pense pas que la fonction ait été créée sous 365 pour l'instant) une fonction qui permette cela, il suffirait de créer une fonction très simple sous VBA.
Si vous ne savez pas comment faire :
- Dans les options, activez votre onglet Développeur ;
- à partir de cet onglet, créez un nouveau module en cliquant sur le deuxième outil de la barre
d'outils (la bulle doit afficher "Nouveau module") ;
- Dans la fenêtre principale, intégrez ce code :
N'oubliez pas de sauvegarder le classeur sous format .xlsm (prenant en charge les macros)
Si vous souhaitez que cette fonction soit utilisable avec plusieurs classeurs différents, vous pouvez aussi faire en sorte d'avoir le classeur contenant le module ouvert en même temps que ceux sur lesquels vous travaillez : toutes les macros et les fonctions des classeurs ouverts fonctionneront aussi pour les autres ouverts.
La fonction a utiliser sera bien sûr Estencouleur(VotreRéférence), et elle renverra une valeur VRAI/FAUX ; du coup elle a sa place en premier paramètre d'une fonction SI().
Voilà, j'espère que cela pourra vous servir ! ;)
Si je comprends bien votre problème, il faut utiliser une fonction If pour appliquer l'une ou l'autre formule, exact ?
Dans ce cas, comme il n'existe pas sous Excel (j'ai 2019 mais je ne pense pas que la fonction ait été créée sous 365 pour l'instant) une fonction qui permette cela, il suffirait de créer une fonction très simple sous VBA.
Si vous ne savez pas comment faire :
- Dans les options, activez votre onglet Développeur ;
- à partir de cet onglet, créez un nouveau module en cliquant sur le deuxième outil de la barre
d'outils (la bulle doit afficher "Nouveau module") ;
- Dans la fenêtre principale, intégrez ce code :
Function EstEnCouleur(MaCellule As Range) As Boolean
EstEnCouleur = False
If MaCellule.Interior.ColorIndex <> xlColorIndexNone Then
EstEnCouleur = True
End If
End Function
N'oubliez pas de sauvegarder le classeur sous format .xlsm (prenant en charge les macros)
Si vous souhaitez que cette fonction soit utilisable avec plusieurs classeurs différents, vous pouvez aussi faire en sorte d'avoir le classeur contenant le module ouvert en même temps que ceux sur lesquels vous travaillez : toutes les macros et les fonctions des classeurs ouverts fonctionneront aussi pour les autres ouverts.
La fonction a utiliser sera bien sûr Estencouleur(VotreRéférence), et elle renverra une valeur VRAI/FAUX ; du coup elle a sa place en premier paramètre d'une fonction SI().
Voilà, j'espère que cela pourra vous servir ! ;)