Classement suivant case à cocher

  • Initiateur de la discussion Initiateur de la discussion 3dbillard
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

3

3dbillard

Guest
Bonjour à tous,
j'ai une feuille avec un classement automatique qui se fait selon des critères dans un ordre, je voudrais que si l'on coche une case le classement se fasse dans un autre ordre. Un petit fichier joint sera plus parlant, mon classement se fait suivant "Calcul".
Merci d'avance et bonne journée à tout le monde.
 

Pièces jointes

Re : Classement suivant case à cocher

Bonjour 3dbillard,

essaie ce code :
VB:
Private Sub CheckBox1_Click()
    Range("S49:S51").FormulaR1C1 = IIf(CheckBox1, "=(RANK(RC[-6],R49C[-6]:R51C[-6])&RANK(RC[-5],R49C[-5]:R51C[-5])&RANK(RC[-2],R49C[-2]:R51C[-2]))*1", "=(RANK(RC[-6],R49C[-6]:R51C[-6])&RANK(RC[-4],R49C[-4]:R51C[-4])&RANK(RC[-3],R49C[-3]:R51C[-3])&RANK(RC[-2],R49C[-2]:R51C[-2]))*1")
End Sub

à mettre à la place de celui qui existe (et qui est vide)
 
Re : Classement suivant case à cocher

Bonjour si quelqu'un ou Softmama peut m'aider à modifier, la formule ci-dessus, car j'ai un autre fichier ou la première selection est "AS49:AS51" au lieu de "S49:S51". j'ai essayé de rajouter un A devant les sélections , mais j'ai du ratter quelque chose. Merci
 
Re : Classement suivant case à cocher

bonjour,

si tu veux placer les formules en [AS49:AS51] au lieu de [S49:S51] il faut non seulement (comme tu l'as fait) modifier l'adresse concernée mais éfgalement décaler les références aux cellules de 26 colonnes (Colonne AS, située à 26 colonnes de la colonne S). Ainsi la macro devient logiquement :
VB:
Private Sub CheckBox1_Click()
    Range("AS49:AS51").FormulaR1C1 = IIf(CheckBox1, "=(RANK(RC[-32],R49C[-32]:R51C[-32])&RANK(RC[-31],R49C[-31]:R51C[-31])&RANK(RC[-28],R49C[-28]:R51C[-28]))*1", "=(RANK(RC[-32],R49C[-32]:R51C[-32])&RANK(RC[-30],R49C[-30]:R51C[-30])&RANK(RC[-29],R49C[-29]:R51C[-29])&RANK(RC[-28],R49C[-28]:R51C[-28]))*1")
End Sub
 
Re : Classement suivant case à cocher

Re,

Bon ben ça a l'air de marcher, je ne vois pas ce qui t'ennuie. Cf. fichier joint

VB:
Private Sub CheckBox1_Click()
    Range("AS49:AS51").FormulaR1C1 = IIf(CheckBox1, "=(RANK(RC[-6],R49C[-6]:R51C[-6])&RANK(RC[-5],R49C[-5]:R51C[-5])&RANK(RC[-2],R49C[-2]:R51C[-2]))*1", "=(RANK(RC[-6],R49C[-6]:R51C[-6])&RANK(RC[-4],R49C[-4]:R51C[-4])&RANK(RC[-3],R49C[-3]:R51C[-3])&RANK(RC[-2],R49C[-2]:R51C[-2]))*1")
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
212
Réponses
10
Affichages
411
Réponses
5
Affichages
358
Réponses
1
Affichages
232
Réponses
18
Affichages
1 K
Retour