Mise en forme conditionnelle: icône sur les 3 plus hautes valeurs

Paulineee

XLDnaute Nouveau
Bonjour,

Je cherche à faire une mise en forme conditionnelle qui peut paraître simple mais que je n'arrive pas à faire : Je cherche à appliquer une mise en forme conditionnelle qui appliquerait une icône (dans mon cas, une étoile) sur les 3 plus hautes valeurs (ce sont des chiffres).

Par exemple, j'ai la liste des notes d'une classe de CM2 et je cherche à mettre automatiquement une petite étoile (l'icône existe déjà) à côté des 3 meilleures notes de la classe...

Ca parait simple mais j'y arrive pas...

Pouvez-vous m'aider ?

Merci !
 

Dugenou

XLDnaute Barbatruc
Re : Mise en forme conditionnelle: icône sur les 3 plus hautes valeurs

Bonjour,
Avec Excel 2010 et la mise en forme conditionnelle avec des icones c'est possible en spécifiant pas d'icone pour les autres valeurs, mais je n'y arrive que pour un classement (1er 2eme et 3eme). Je ne sais pas le faire avec une formule pour calculer les 3 meilleures notes.
Cordialement
 

frangy

XLDnaute Occasionnel
Re : Mise en forme conditionnelle: icône sur les 3 plus hautes valeurs

Bonjour,

Une idée ...
avec les notes placées en colonne A
Code:
=SI(OU(A1=GRANDE.VALEUR($A$1:$A$100;1);A1=GRANDE.VALEUR($A$1:$A$100;2);A1=GRANDE.VALEUR($A$1:$A$100;3));"*";"")

Cordialement.
 

job75

XLDnaute Barbatruc
Re : Mise en forme conditionnelle: icône sur les 3 plus hautes valeurs

Bonjour Paulinee, Dugenou, frangy,

Avec cette macro dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim plage As Range, n As Long
Set plage = [A:A] 'plage à adapter
n = Application.Count(plage) 'nombre de notes
If n < 3 Then Exit Sub
n = Application.Large(plage, 3) 'fonction GRANDE.VALEUR
[A:A].NumberFormat = "[>=" & n & "]0""*"";General" 'format nombre personnalisé
End Sub
A+
 

job75

XLDnaute Barbatruc
Re : Mise en forme conditionnelle: icône sur les 3 plus hautes valeurs

Re,

Les notes peuvent être décimales, il vaut mieux utiliser :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim plage As Range, n As Double
Set plage = [A:A] 'plage à adapter
n = Application.Count(plage) 'nombre de notes
If n < 3 Then Exit Sub
n = Application.Large(plage, 3) 'fonction GRANDE.VALEUR
[A:A].NumberFormat = "[>=" & n & "]General""*"";General"
End Sub
Bémol : si la 3ème meilleure note est 16,7 il y aura une étoile sur toutes les notes >= 16...

A+
 

job75

XLDnaute Barbatruc
Re : Mise en forme conditionnelle: icône sur les 3 plus hautes valeurs

Re,

En cherchant bien on trouve toujours :) utilisez donc :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim plage As Range, n As String
Set plage = [A:A] 'plage à adapter
If Application.Count(plage) < 3 Then Exit Sub 'nombre de notes
n = Replace(Application.Large(plage, 3), ",", ".") 'Large : GRANDE.VALEUR
plage.NumberFormat = "[>=" & n & "]General""*"";General"
End Sub
A+
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : Mise en forme conditionnelle: icône sur les 3 plus hautes valeurs

Re,

Je découvre, sur Excel 2003, que le nombre de formats personnalisés est limité (un peu plus de 200).

Donc pour les formats créés mieux vaut se limiter à une décimale :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim plage As Range, n As String
Set plage = [A:A] 'plage à adapter
If Application.Count(plage) < 3 Then Exit Sub 'nombre de notes
n = Int(10 * Application.Large(plage, 3)) / 10 'GRANDE.VALEUR avec une décimale
n = Replace(n, ",", ".")
plage.NumberFormat = "[>=" & n & "]General""*"";General"
End Sub
A+
 

chris

XLDnaute Barbatruc
Re : Mise en forme conditionnelle: icône sur les 3 plus hautes valeurs

Bonjour
Coucou à job75, Dugenou

Une solution ci-joint
 

Pièces jointes

  • notes.xlsx
    9.5 KB · Affichages: 202
  • notes.xlsx
    9.5 KB · Affichages: 221
  • notes.xlsx
    9.5 KB · Affichages: 222

R@chid

XLDnaute Barbatruc
Re : Mise en forme conditionnelle: icône sur les 3 plus hautes valeurs

Salut @ tous,
Salut Chris, pourquoi une cellule et une mise MFC intermedaires pour arriver au resultat.
tu peux le faire simple comme sur PJ.
Amicalement
 

Pièces jointes

  • NotesMfc_Chris.xlsx
    9.2 KB · Affichages: 223

david84

XLDnaute Barbatruc
Re : Mise en forme conditionnelle: icône sur les 3 plus hautes valeurs

Bonsoir tout le monde,
En reprenant l'idée de Chris sans utiliser de seuil.
A+
Edit : Rachid est passé avant moi
 

Pièces jointes

  • notes.xlsx
    9.7 KB · Affichages: 186
  • notes.xlsx
    9.7 KB · Affichages: 208
  • notes.xlsx
    9.7 KB · Affichages: 209

chris

XLDnaute Barbatruc
Re : Mise en forme conditionnelle: icône sur les 3 plus hautes valeurs

Bonjour

Coucou à David84

Rachid je te remercie : cela faisait longtemps que je cherchais à rendre dynamiques les jeux d'icônes.
Devant l'impossibilité d'utiliser les adresses sans $, j'avais conclu un peu vite qu'on ne pouvait guère jouer et je n'ai même pas tenté une formule.

Tu m'ouvres de nouveaux horizons. Super.
 

Discussions similaires

Réponses
12
Affichages
209

Statistiques des forums

Discussions
312 202
Messages
2 086 177
Membres
103 152
dernier inscrit
Karibu