تفعل XLOOKUP كل ما تفعله VLOOKUP، مع طرق أقل للخطأ: تطابق مطابقة تامة افتراضيًا، وتأخذ عمود الإرجاع كنطاق بدلًا من رقم، ويمكنها البحث إلى اليسار، ولها وسيطها الخاص لحالة "غير موجود". استخدم VLOOKUP عندما يجب أن يعمل الملف في Excel 2019 أو ما قبله، حيث لا توجد XLOOKUP. تنفذ الورقة أدناه البحث نفسه بالطريقتين.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | Category | Price | Stock | Look for | Pear | |
| 2 | Apple | Fruit | $1.20 | 40 | VLOOKUP | $1.50 | |
| 3 | Pear | Fruit | $1.50 | 25 | XLOOKUP | $1.50 | |
| 4 | Carrot | Vegetable | $0.80 | 60 | |||
| 5 | Bread | Bakery | $2.40 | 15 | |||
| 6 | Milk | Dairy | $1.10 | 30 |
تعيد كلتاهما $1.50. انقر كل صيغة: تحدد VLOOKUP الجدول A2:D6 كله وتعدّ 3 أعمدة داخله؛ وتحدد XLOOKUP فقط العمود الذي تبحث فيه والعمود الذي تُرجع منه.
مقارنة VLOOKUP وXLOOKUP
| VLOOKUP | XLOOKUP | |
|---|---|---|
| إصدارات الاكسل | الكل | Excel 2021 و2024 وMicrosoft 365 والويب |
| المطابقة الافتراضية | تقريبية (إذا حُذف الوسيط الرابع) | تامة |
| عمود الإرجاع | رقم يُعدّ داخل الجدول | نطاق |
| إدراج عمود داخل الجدول | تعيد العمود الخطأ | تستمر في العمل |
| البحث إلى اليسار | لا | نعم |
| القيمة غير موجودة | #N/A، ضعها داخل IFNA | الوسيط الرابع، "Not found" |
| آخر تطابق | لا | search_mode -1 |
| عدة أعمدة دفعة واحدة | عمود لكل صيغة (أو {2,3} كرقم العمود في Microsoft 365) | نطاق إرجاع بعدة أعمدة يمدها |
| المطابقة التقريبية | الأصغر التالية، يجب ترتيب البيانات | الأصغر التالية أو الأكبر التالية، بأي ترتيب |
| أحرف البدل | مفعّلة مع FALSE | فقط مع match_mode 2 |
| البحث الأفقي | تحتاج إلى HLOOKUP | الدالة نفسها |
تتجاهل الدالتان حالة الأحرف. ومع المطابقة التامة تعيد كلتاهما أول تطابق من الأعلى، ما لم يُطلب من XLOOKUP البحث من الأسفل.
عدم العثور: IFNA مقابل الوسيط الرابع
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | Category | Price | Stock | Look for | Kiwi | |
| 2 | Apple | Fruit | $1.20 | 40 | VLOOKUP | #N/A | |
| 3 | Pear | Fruit | $1.50 | 25 | with IFNA | Not found | |
| 4 | Carrot | Vegetable | $0.80 | 60 | XLOOKUP | Not found | |
| 5 | Bread | Bakery | $2.40 | 15 | |||
| 6 | Milk | Dairy | $1.10 | 30 |
#N/A القيمة التي تبحث عنها غير موجودة في نطاق البحث.تعرض VLOOKUP العادية الخطأ #N/A. وتحتاج VLOOKUP إلى IFNA حولها لعرض نص، وهو ما تفعله XLOOKUP بوسيطها الرابع. اكتب Milk في G1 فتتفق الثلاث: $1.10.
البحث إلى اليسار وتحريك الأعمدة
يأتي القيدان البنيويان في VLOOKUP من رقم العمود. فهي لا تستطيع العد إلا إلى يمين العمود الذي تبحث فيه، والرقم لا يتغير عندما يتغير الجدول: أدرج عمودًا بين Category وPrice، فتبقى =VLOOKUP(G1,A2:D6,3,FALSE) تعيد العمود 3، الذي صار العمود الجديد. أما XLOOKUP فتشير إلى عمود الإرجاع كنطاق، فيعدّله الاكسل مثل أي مرجع آخر، ويمكن أن يكون عمود البحث في أي مكان.
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | Category | Price | Stock | Price | $0.80 | |
| 2 | Apple | Fruit | $1.20 | 40 | XLOOKUP | Carrot | |
| 3 | Pear | Fruit | $1.50 | 25 | INDEX MATCH | Carrot | |
| 4 | Carrot | Vegetable | $0.80 | 60 | |||
| 5 | Bread | Bakery | $2.40 | 15 | |||
| 6 | Milk | Dairy | $1.10 | 30 |
تعيد كلتاهما Carrot. لا توجد نسخة VLOOKUP: الاسم يقع يسار السعر. وفي الإصدارات الأقدم يكون الحل INDEX MATCH، المعروضة في G3، التي تصمد أيضًا أمام الأعمدة المدرجة. تشرحها صفحة INDEX وMATCH.
المطابقة التقريبية بالطريقتين
للفئات، تستخدم VLOOKUP القيمة TRUE وتحتاج إلى عمود أول مرتب تصاعديًا. وتستخدم XLOOKUP قيمة match_mode -1 ولا تحتاج إلى ترتيب، وتعطي match_mode 1 القيمة الأكبر التالية بدلًا من ذلك، وهذا ما لا تستطيعه VLOOKUP.
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Sales from | Rate | Sales | 4,200 | |
| 2 | 0 | 0% | VLOOKUP | 3% | |
| 3 | 1000 | 3% | XLOOKUP | 3% | |
| 4 | 5000 | 5% | |||
| 5 | 10000 | 8% |
تعيد كلتاهما 3% للقيمة 4,200. غيّر E1 إلى 10000 فتعيد كلتاهما 8%.
متى تُبقي على VLOOKUP
- الملف مشترك مع أشخاص يستخدمون Excel 2019 أو 2016 أو ما قبله. تعرض XLOOKUP هناك الخطأ #NAME?. وINDEX MATCH هي الخيار الآخر الذي يعمل في كل مكان.
- المصنف فيه أصلًا مئات من صيغ VLOOKUP التي تعمل. إعادة كتابتها لا تكسبك الكثير؛ استخدم XLOOKUP للصيغ الجديدة.
السرعة ليست سببًا لاختيار أي منهما. في الأوراق العادية كلتاهما فورية، وفي القوائم المرتبة الكبيرة جدًا يكون البحث الثنائي في XLOOKUP (search_mode 2) وVLOOKUP مع TRUE سريعين كليهما.
يدعم Google Sheets الدالتين بالوسائط نفسها.
تمرين: أعد كتابة VLOOKUP
| A | B | C | D | E | F | G | |
|---|---|---|---|---|---|---|---|
| 1 | Product | Category | Price | Stock | Look for | Bread | |
| 2 | Apple | Fruit | $1.20 | 40 | Stock | ||
| 3 | Pear | Fruit | $1.50 | 25 | |||
| 4 | Carrot | Vegetable | $0.80 | 60 | |||
| 5 | Bread | Bakery | $2.40 | 15 | |||
| 6 | Milk | Dairy | $1.10 | 30 |
دورك: تعيد =VLOOKUP(G1,A2:D6,4,FALSE) مخزون المنتج الموجود في G1. في G2، اكتب البحث نفسه بالدالة XLOOKUP.
الأسئلة الشائعة
هل XLOOKUP أفضل من VLOOKUP؟
للعمل الجديد في Excel 2021 أو Microsoft 365، نعم: مطابقتها الافتراضية تامة، وليس فيها رقم عمود يتعطل عند تحريك الأعمدة، وتبحث إلى اليسار، وفيها نص مدمج لحالة عدم العثور. تكون VLOOKUP أفضل فقط عندما يجب أن يعمل الملف في Excel 2019 أو ما قبله، حيث تعرض XLOOKUP الخطأ #NAME?.
هل XLOOKUP أسرع من VLOOKUP؟
ليس بشكل ستلاحظه في الأوراق العادية؛ فكلتاهما تبحثان في بضعة آلاف من الصفوف فورًا. في البيانات المرتبة الكبيرة جدًا، يكون نمط البحث الثنائي في XLOOKUP (search_mode 2) أسرع من البحث الخطي، وVLOOKUP مع TRUE تبحث بحثًا ثنائيًا أيضًا.
ما الفرق بين XLOOKUP وINDEX MATCH؟
يمكنهما إجراء عمليات البحث نفسها. XLOOKUP دالة واحدة بوسائط أبسط ووسيط لعدم العثور؛ وINDEX MATCH تعمل في كل إصدارات الاكسل. تعيد =XLOOKUP(F2,A2:A6,C2:C6) و=INDEX(C2:C6,MATCH(F2,A2:A6,0)) القيمة نفسها.
كيف أحوّل VLOOKUP إلى XLOOKUP؟
أبقِ قيمة البحث، وقسّم الجدول إلى العمود الأول والعمود الذي كنت تُرجعه، واحذف رقم العمود وFALSE: تصبح =VLOOKUP(F2,A2:D6,3,FALSE) هي =XLOOKUP(F2,A2:A6,C2:C6).