IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

FAQ Excel

FAQ ExcelConsultez toutes les FAQ

Nombre d'auteurs : 46, nombre de questions : 845, dernière mise à jour : 30 mars 2022 

 
OuvrirSommaireLes mises en forme conditionnelles

La mise en forme conditionnelle applique un format (ombrage de cellule, couleur de police ou de cadre) automatiquement si une condition particulière est remplie. La MFC permet ainsi de mettre en évidence et de visualiser rapidement certaines données dans un tableau de résultats.

Pour plus de détails, consultez le tutoriel sur les mises en formes conditionnelles.

Créé le 9 avril 2007  par SilkyRoad

Le code suivant va mettre un fond vert à toutes les cellules dont la valeur est doublonnée dans la première colonne.

Vba
Sélectionnez
Dim ObjRange As Range
 
Set ObjRange = Range("A1").EntireColumn
With ObjRange.FormatConditions
    .Add Type:=xlExpression, Formula1:="=NB.SI(C1;LC)>1"
    .Item(.Count).Interior.Color = vbGreen
End With
Créé le 14 février 2004  par Bidou

Pour utiliser une formule :
     Sélectionnez la ou les cellules.
     Cliquez sur l'option Nouvelle règle dans le menu du bouton Mise en forme conditionnelle.
     Sélectionnez Utiliser une formule ... dans le champ Type de règle.
     Saisissez votre formule.
     Choisissez le format de mise en forme (bouton Format).
     Cliquez sur le bouton OK pour valider.

Image non disponible
Créé le 20 août 2007  par SilkyRoad

Lorsque vous appliquez plusieurs mefc à une plage de cellules, chaque nouvelle règle ajoutée devient automatiquement la priorité principale.
Si plusieurs règles sont vraies et qu'elles rentrent en conflit (par exemple si chaque mise en forme applique une couleur de fond différente dans les cellules), seule la règle prioritaire est prise en compte.

Pour changer l'ordre des priorités :
Sélectionnez la plage de cellules contenant les mises en forme.
Sélectionnez l'onglet Accueil, groupe Style, cliquez sur le bouton "Mise en forme conditionnelle", puis sélectionnez l'option "Gérer les règles".
La boîte de dialogue s'affiche à l'écran.
Assurez-vous que l'élément "Sélection actuelle" est activé dans le menu déroulant "Afficher les règles de mise en forme".

La priorité principale se trouve sur la première ligne, la deuxième priorité sur la deuxième ligne ... etc ...
Sélectionnez la règle à déplacer.
Cliquez sur les flèches "Monter" ou "Descendre" pour déplacer la règle.

Vous pouvez aussi cocher l'option "Interrompre si Vrai" pour limiter l'évaluation à une priorité particulière.
Cliquez sur le bouton OK pour valider.

Créé le 2 octobre 2007  par SilkyRoad

Vérifiez que les deux classeurs sont bien dans la même instance.
Il n'est pas possible de transférer les mises en forme lorsque vous effectuez le collage vers un classeur qui est dans une instance différente du classeur d'origine.

Créé le 2 octobre 2007  par SilkyRoad

Par exemple, vous souhaitez afficher une barre de données progressive dans la cellule B1 en fonction de la date du jour, d'une date de départ et d'une date finale.

En A1, est saisie la date de départ.
En B1, vous saisissez la formule =AUJOURDHUI()-A1
En C1, vous indiquez la date de fin.

Sélectionnez la cellule B1.
Cliquez sur le bouton de mise en forme conditionnelle (onglet Accueil / groupe Style).
Sélectionnez le bouton "Nouvelle règle".
Sélectionnez le type "Mettre en forme toutes les cellules d'après leur valeur".
Choisissez "Barre de données" dans le champ "Style de mise en forme".
Sélectionnez "Nombre" dans le champ Type "Barre la plus courte" et indiquez la valeur 0.
Sélectionnez "Formule" dans le champ Type "Barre la plus longue" et saisissez =$C$1-$A$1.
Choisissez la couleur de la barre de donnée.
Remarque : le contenu de la cellule B1 peut être masqué en cochant l'option "Afficher la barre uniquement".
Cliquez sur le bouton OK dans toutes les boîtes de dialogues.

La barre de données progressive apparait dans la cellule B1 en fonction de la date du jour, de la date finale et de la date initiale.

Créé le 18 novembre 2008  par SilkyRoad

Cet exemple montre comment utiliser une fonction personnelle (ContientFormule) qui permet de vérifier si une cellule contient une formule.

Placez la fonction dans un module standard du classeur :

Vba
Sélectionnez
Function ContientFormule(objCell As Range) As Boolean
    'Renvoie Vrai si la cellule passée en paramètre contient
    'une formule.
    'Sinon, la fonction renvoie False.
    ContientFormule = objCell.HasFormula
End Function

Ensuite, sélectionnez la plage de cellule qui va recevoir la mefc (A1:A10).
Choisissez une condition 'La formule est :'.
Saisissez le formule suivante dans la zone de saisie :
=ContientFormule(A1)
Appliquez un format.
Cliquez sur le bouton OK pour valider.

Créé le 19 février 2009  par SilkyRoad

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2009 Developpez Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.