Maison > Article > Les sujets > Partage pratique de compétences Excel : routines de formules pour le classement selon les conditions
Quand il s'agit de classer des données dans Excel, la première chose qui vient à l'esprit est la fonction de classement, mais que se passe-t-il si vous souhaitez classer les données en fonction de conditions ? Mes amis, êtes-vous tout d'un coup confus ? Il semble que vous n'ayez pas entendu parler de la fonction de classement selon les conditions. Alors aujourd’hui, je vais partager avec vous une formule de classement selon les conditions dans Excel. Jetons un coup d’œil !
Parmi les fonctions Excel, il y a SUMIF qui additionne en fonction de conditions, AVERAGEIF qui calcule la moyenne en fonction de conditions et COUNTIF qui compte en fonction de conditions. La dernière version a même la fonction MAXIFS qui trouve la valeur maximale en fonction de. conditions. Fonction MINIFS qui trouve la valeur minimale en fonction des conditions. Mais aucune fonction ne peut être classée par conditions.
Cependant, des problèmes tels que le classement par conditions sont effectivement rencontrés dans la vie quotidienne. Par exemple, le problème suivant en est un représentant typique :
Nous savons tous qu'en utilisant la fonction RANK, vous pouvez obtenir le numéro d'un nombre. dans un ensemble de nombres Classement, dans cet exemple le classement total est obtenu à l'aide de la formule =RANK(C2,$C$2:$C$19).
Mais que se passe-t-il si vous souhaitez obtenir le classement des ventes de chaque magasin de la région ? Avez-vous besoin d'utiliser la fonction RANK pour vous classer dans chaque région ?
Bien que ce soit aussi une idée, la faible efficacité peut être imaginée. En fait, parmi les fonctions Excel, il existe une fonction qui peut réaliser un classement par conditions, qui est SUMPRODUCT.
Avant d'introduire formellement la formule de classement par conditions, comprenons d'abord le principe de fonctionnement du classement par conditions.
Prenons l'exemple du magasin 10004. Le classement régional est 2 et le classement global est 10. Comme le montre la figure :
La raison pour laquelle son classement régional est 2 est facile à comprendre car il est dans le même. zone de vente (Condition), il n'y a que six nombres parmi ces six nombres, un seul nombre est supérieur à 56,55, soit 79,72, son classement dans la zone est donc 2.
Le principe de calcul des autres classements est le même. En y réfléchissant ainsi, réaliser un classement par conditions implique en fait deux processus : le jugement des conditions et le jugement de la taille.
Écrivez ces deux processus à l'aide des formules : $A$2:$A$19=A2 et $C$2:$C$19>C2
. Vous pouvez comprendre ces deux parties avec des exemples. $A:$A=A2和$C:$C>C2
,可以结合实例来理解这两部分。
首先看第一个,$A:$A=A2
会得到一组逻辑值:
{TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}
从这个结果中可以看出,与要统计的门店在同一个区域的数据都是TRUE。
$C:$C>C2
同样也会得到一组逻辑值:
{FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE}
这个结果表示销售额大于要统计门店时也会得到TRUE。
现在的问题是如何将这两个部分合并起来,因为这是对一个数据同时进行的两个判断,所以将两组逻辑值相乘,来看看得到了什么结果:
图中的这一组由0和1构成的数据,是($A:$A=A2)*($C:$C>C2)计算得到的结果,表示10001这个门店所在的区域中,销售额高于14.46的有4个门店(4个1),只需要对这个结果求和,基本上就实现了排名的目的,因此公式套路也就有了:
=SUMPRODUCT(($A:$A=A2)*($C:$C>C2))
不过这样得到的结果有个问题,名次是从0开始的,要解决也很简单,有两个方法。
方法1:直接在公式后加1,结果如图所示。
方法2::将大于号改成大于等于,结果如图所示。
这两个方法,通常情况下并没有什么区别,使用哪个公式都可以。
以上是针对一个条件进行排名的公式,如果条件是两个或者更多,将公式套路进行扩展就行:
=SUMPRODUCT((条件区域1=条件1)* (条件区域2=条件2)* (数据区域>数据))
$A$2:$A$19=A2
obtiendra un ensemble de valeurs logiques :
{TRUE;TRUE;TRUE;TRUE;TRUE;TRUE ;FALSE ;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE;FALSE}
🎜🎜🎜🎜On peut voir à partir de ce résultat que les données dans la même zone que le magasin à compter sont toutes VRAIES. 🎜🎜$C$2:$C$19>C2
obtiendra également un ensemble de valeurs logiques : 🎜🎜{FALSE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE;TRUE; VRAI;VRAI;VRAI;VRAI;VRAI;VRAI;VRAI;VRAI;VRAI;VRAI>
🎜🎜🎜🎜Ce résultat signifie que VRAI sera également obtenu lorsque le volume des ventes est supérieur au magasin à compter. 🎜🎜La question maintenant est de savoir comment combiner ces deux parties, car ce sont deux jugements sur une donnée en même temps, alors multipliez les deux ensembles de valeurs logiques pour voir quel résultat est obtenu : 🎜🎜🎜🎜Ce groupe dans l'image se compose de 0 Les données composé de 1 et 1 est le résultat de ($A$2:$A$19=A2)*($C$2:$C$19>C2), ce qui signifie que dans la zone où se trouve le magasin 10001, le volume des ventes est supérieur à 14,46 Il y a 4 magasins (4 1s). Il vous suffit de additionner les résultats pour atteindre l'objectif de classement, donc la formule est là : 🎜🎜=SUMPRODUCT(($A$2:$ A$19=). A2)*($C$2:$C$19>C2))
🎜🎜🎜🎜Cependant, il y a un problème avec les résultats obtenus de cette manière. Le classement part de 0. Il est très simple de le résoudre. Il existe deux méthodes. 🎜🎜Méthode 1 : Ajoutez 1 directement après la formule, le résultat est tel qu'indiqué sur la figure. 🎜🎜🎜🎜Méthode 2 : : Remplacez le signe supérieur par supérieur ou égal à, le résultat est tel qu'indiqué sur la figure. 🎜🎜🎜🎜Ces deux méthodes , il n'y a généralement aucune différence, n'importe quelle formule peut être utilisée. 🎜🎜Ce qui précède est une formule de classement pour une condition. S'il y a deux conditions ou plus, développez simplement la formule : 🎜🎜=SUMPRODUCT((Zone conditionnelle 1=Condition 1)* (Zone conditionnelle 2= Condition 2) * (zone de données>données))
🎜🎜Je ne listerai pas d'exemples spécifiques. Je pense qu'une fois que tout le monde a compris les principes de la formule, ce n'est pas un problème de l'appliquer vous-même en fonction de problèmes spécifiques. 🎜Recommandations d'apprentissage associées : Tutoriel Excel
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!