تعيد =RANK.EQ(B2,$B$2:$B$7) ترتيب B2 بين القيم في B2:B7، مع الترتيب 1 لأكبر قيمة. ولترتيب أصغر قيمة أولًا، أضف 1 وسيطًا ثالثًا: =RANK.EQ(B2,$B$2:$B$7,1).
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Name | Sales | Rank (high = 1) | Rank (low = 1) |
| 2 | Ana | 4200 | 3 | 4 |
| 3 | Ben | 3100 | 5 | 2 |
| 4 | Cleo | 5600 | 1 | 6 |
| 5 | Dan | 2800 | 6 | 1 |
| 6 | Eve | 4900 | 2 | 5 |
| 7 | Finn | 3700 | 4 | 3 |
لدى Cleo أعلى مبيعات فترتيبها 1 في العمود C و6 في العمود D. غيّر مبيعات Dan إلى 6000 فيتحدث كل ترتيب.
صيغة دالة RANK.EQ
=RANK.EQ(number, ref, [order])
number: القيمة المراد ترتيبها، وهي عادة الخلية في الصف نفسه.ref: القائمة التي تُرتَّب القيمة فيها. اجعلها مطلقة ($B$2:$B$7) حتى تبقى نفسها في كل صف عند سحب الصيغة إلى الأسفل.order: احذفها أو استخدم0للترتيب التنازلي (الأكبر 1)، واستخدم1للترتيب التصاعدي (الأصغر 1).
تُتجاهل النصوص والخلايا الفارغة في ref. وإذا لم تكن number موجودة في ref أصلًا، تعيد RANK.EQ الخطأ #N/A.
ظهرت RANK.EQ وRANK.AVG في Excel 2010. وما زالت الدالة القديمة RANK تعمل وتعطي النتيجة نفسها التي تعطيها RANK.EQ؛ وفي Google Sheets توجد الثلاث.
القيم المتساوية: RANK.EQ مقابل RANK.AVG
عندما تتساوى القيم، تعطيها RANK.EQ كلها الترتيب نفسه وتتخطى المراكز التي تشغلها، كما في نتائج الرياضة: شخصان في المركز الثاني، ثم الرابع. وتعطي RANK.AVG كل قيمة متساوية متوسط المراكز التي تتشاركها.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Name | Score | RANK.EQ | RANK.AVG | Unique rank |
| 2 | Ana | 95 | 1 | 1 | 1 |
| 3 | Ben | 88 | 2 | 3 | 2 |
| 4 | Cleo | 88 | 2 | 3 | 3 |
| 5 | Dan | 76 | 5 | 5 | 5 |
| 6 | Eve | 88 | 2 | 3 | 4 |
| 7 | Finn | 64 | 6 | 6 | 6 |
يتساوى Ben وCleo وEve عند 88. تعطي RANK.EQ الثلاثة 2 وتعطي Dan الترتيب 5. وتعطيهم RANK.AVG الترتيب 3، أي متوسط المراكز 2 و3 و4.
ويفك العمود E التعادل حسب الترتيب في القائمة: تعدّ COUNTIF($B$2:B2,B2) مرات ظهور الدرجة حتى الآن، من الأعلى حتى هذا الصف (لا يتحرك إلا آخر النطاق أثناء السحب). تضيف أول 88 القيمة 0، والثانية 1، والثالثة 2، لذا يظهر كل ترتيب من 1 إلى 6 مرة واحدة بالضبط. وهذه هي الصيغة التي تستخدمها عندما يدخل الترتيب في بحث مثل "من هو رقم 3"، لأن البحث يحتاج إلى ترتيب فريد لكل صف.
الترتيب داخل مجموعة
لا توجد RANKIF. لترتيب كل مندوب مبيعات مقابل زملائه في المنطقة نفسها فقط، عدّ من باع أكثر منه في تلك المنطقة، وأضف 1:
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Name | Region | Sales | Rank in region |
| 2 | Ana | North | 4200 | 3 |
| 3 | Ben | South | 3100 | 3 |
| 4 | Cleo | North | 5600 | 1 |
| 5 | Dan | South | 2800 | 4 |
| 6 | Eve | North | 4900 | 2 |
| 7 | Finn | South | 3700 | 1 |
| 8 | Gia | North | 3900 | 4 |
| 9 | Hal | South | 3300 | 2 |
تتصدر Cleo منطقة North ويتصدر Finn منطقة South. غيّر منطقة Ana إلى South: تسد ترتيبات North الفجوة وتحصل South على شخص خامس. وللترتيب التصاعدي داخل مجموعة، استخدم "<"&C2 بدلًا من ذلك. وتتصرف القيم المتساوية مثل RANK.EQ: تتشارك الترتيب. تجد المزيد عن العد بعدة شروط في صفحة COUNTIFS.
عرض أفضل 3 حسب الترتيب
يجيب عمود الترتيب عن سؤال "في أي مركز هذا الشخص"؛ وللإجابة عن "من في المركز الأول"، ابحث عن الترتيب. مع ترتيبات فريدة في العمود C، تعيد =XLOOKUP(1,C2:C7,A2:A7) الاسم صاحب الترتيب 1 (وفي Excel 2019 وما قبله، =INDEX(A2:A7,MATCH(1,C2:C7,0))). ودون عمود ترتيب، تعيد =LARGE(B2:B7,2) ثاني أكبر قيمة مباشرة، وتسرد =SORTBY(A2:B7,B2:B7,-1) الجدول كله من الأعلى إلى الأدنى (Excel 2021 أو Microsoft 365؛ راجع SORT وSORTBY).
| A | B | C | D | E | F | |
|---|---|---|---|---|---|---|
| 1 | Name | Sales | Rank | Place | Name | |
| 2 | Ana | 4200 | 3 | 1 | Cleo | |
| 3 | Ben | 3100 | 5 | 2 | Eve | |
| 4 | Cleo | 5600 | 1 | 3 | Ana | |
| 5 | Dan | 2800 | 6 | |||
| 6 | Eve | 4900 | 2 | |||
| 7 | Finn | 3700 | 4 |
العمود C هو الترتيب الفريد من قسم القيم المتساوية، لذا لا يمكن لتعادل أن يترك مركزًا فارغًا. تسرد F2 إلى F4 كلًا من Cleo وEve وAna. غيّر مبيعات Ana إلى 6000 فتنتقل إلى القمة.
جرّب: أسرع عدّاء أولًا
| A | B | C | |
|---|---|---|---|
| 1 | Runner | Time | Rank |
| 2 | Ana | 58.4 | |
| 3 | Ben | 55.1 | |
| 4 | Cleo | 61.9 | |
| 5 | Dan | 53.7 | |
| 6 | Eve | 57.3 | |
| 7 | Finn | 60.2 |
دورك: في C2، رتّب زمن Ana في B2 بين كل الأزمنة في B2:B7، بحيث يكون ترتيب أسرع (أقل) زمن 1. تُسحب الصيغة إلى C7، لذا استخدم مراجع مطلقة للقائمة.
| A | B | C | D | |
|---|---|---|---|---|
| 1 | Student | Class | Score | Rank in class |
| 2 | Ana | Red | 81 | |
| 3 | Ben | Red | 92 | |
| 4 | Cleo | Blue | 77 | |
| 5 | Dan | Red | 69 | |
| 6 | Eve | Blue | 95 | |
| 7 | Finn | Red | 85 | |
| 8 | Gia | Blue | 88 |
دورك: في D2، رتّب درجة Ana بين طلاب صفها فقط (العمود B)، مع الترتيب 1 لأعلى درجة. تُسحب الصيغة إلى D8.
خطأ شائع: نطاق نسبي
دون علامات $، ينزل النطاق صفًا واحدًا في كل مرة تُسحب فيها الصيغة، فيُرتَّب كل صف مقابل قائمة تتقلص تبدأ من صفه. تبدو الترتيبات معقولة لكنها خاطئة:
| A | B | C | |
|---|---|---|---|
| 1 | Name | Sales | Rank |
| 2 | Ana | 4200 | 3 |
| 3 | Ben | 3100 | 4 |
| 4 | Cleo | 5600 | 1 |
| 5 | Dan | 2800 | 3 |
| 6 | Eve | 4900 | 1 |
| 7 | Finn | 3700 | 1 |
انقر C4: نطاقها B4:B9، لذا لا تُقارن Cleo إلا بالأشخاص من صفها إلى الأسفل. تعرض Eve الترتيب 1 مع أن Cleo باعت أكثر، ويعرض Finn الترتيب 1 لأنه يُقارن بنفسه وحده. غيّر C2 إلى =RANK.EQ(B2,$B$2:$B$7) فيُصحَّح العمود كله. اضغط F4 والمؤشر داخل النطاق لإضافة علامات $ (على Mac، Cmd+T أو Fn+F4)؛ وتشرح صفحة المراجع المطلقة السبب.
الأسئلة الشائعة
كيف أرتّب الأرقام في الاكسل؟
استخدم =RANK.EQ(B2,$B$2:$B$7) واسحبها إلى الأسفل. تحصل أكبر قيمة على الترتيب 1. أبقِ علامات $ على النطاق حتى لا يتحرك أثناء السحب.
كيف أرتّب من الأصغر إلى الأكبر في الاكسل؟
أضف 1 وسيطًا ثالثًا: =RANK.EQ(B2,$B$2:$B$7,1). استخدمه لأزمنة السباق أو الأسعار أو أي شيء يجب أن تأتي فيه أصغر قيمة أولًا.
ما الفرق بين RANK.EQ وRANK.AVG؟
لا تختلفان إلا في القيم المتساوية. إذا تساوت قيمتان في المركز الثاني، تعطي RANK.EQ كلتيهما 2 والقيمة التالية 4. وتعطي RANK.AVG كلتيهما 2.5، أي متوسط المركزين 2 و3.
كيف أرتّب دون تكرار في الاكسل؟
أضف عدًّا تراكميًا للقيمة: =RANK.EQ(B2,$B$2:$B$7)+COUNTIF($B$2:B2,B2)-1. تحتفظ أولى القيمتين المتساويتين بالترتيب وتحصل الثانية على الترتيب التالي.
كيف أرتّب داخل مجموعة في الاكسل؟
عدّ القيم الأكبر في المجموعة نفسها، وأضف 1: =COUNTIFS($A$2:$A$9,A2,$C$2:$C$9,">"&C2)+1. لا توجد دالة RANKIF.