دالة XLOOKUP في Excel - الوريث الشرعي لـ VLOOKUP اللي بيغير قواعد اللعبة

تخيل معايا الموقف ده. إنت في الشغل، عندك ملف عملاء فيه 50,000 صف. مديرك دخل عليك بقايمة فيها 200 رقم عميل، وقالك: "عايز أعرف اسم كل عميل، تليفونه، عنوانه، وآخر شراء عمله. خلصلي ده النهاردة." الساعة 11 الصبح، وإنت لسه شارب القهوة الأولى.
لو إنت من جيل اللي اتعلموا VLOOKUP، إنت عارف الموضوع ده هياخد ساعتين تلاتة على الأقل. لازم تتأكد من ترتيب الأعمدة، تحدد رقم العمود الصحيح، وتحاول تتعامل مع الأخطاء اللي هتطلع. ولو فيه عميل مش موجود، الـ #N/A هيظهرلك في كل مكان وهتضطر تحط IFERROR.
لكن لو إنت اتعلمت XLOOKUP، نفس الشغل ممكن يخلص في ربع ساعة، والنتيجة أنضف وأكتر دقة. الدالة دي مش مجرد تحديث لـ VLOOKUP، دي إعادة تفكير كاملة في عملية البحث في Excel، وبتحل كل المشاكل اللي كانت موجودة في الدوال القديمة.
في المقال ده، مش هنشرح XLOOKUP زي أي شرح في الإنترنت. هنبدأ بالأساس، ندخل في كل ميزة بعمق، ونقارنها مع VLOOKUP و INDEX-MATCH، وفي الآخر نطبق كل اللي اتعلمناه في مشروع كامل.
قبل ما نبدأ - ليه XLOOKUP أصلاً؟
عشان تفهم قيمة XLOOKUP، لازم تفهم مشاكل اللي قبلها. خلينا نراجع المشاكل التاريخية بسرعة.
المشاكل الـ 5 الكبرى في VLOOKUP
| المشكلة | الشرح | التأثير على المستخدم |
|---|---|---|
| البحث من الشمال لليمين فقط | عمود البحث لازم يبقى الأول | إعادة ترتيب الجداول باستمرار |
| رقم العمود ثابت | لو ضفت عمود في النص، الصيغة بتفسد | صيانة دائمة للملفات |
| المطابقة التقريبية افتراضية | لو نسيت تكتب FALSE، بترجعلك نتائج عشوائية | أخطاء صعبة الاكتشاف |
| عدم التعامل الذكي مع #N/A | لازم تلفها بـ IFERROR كل مرة | صيغ أطول وأعقد |
| بطء مع الجداول الكبيرة | بتقرا كل الأعمدة لحد ما توصل للهدف | ملفات بطيئة |
الناس حاولت تحل المشاكل دي بـ INDEX/MATCH، اللي كانت أقوى وأمرن، بس كانت أصعب في الفهم والكتابة. كنت تكتب صيغتين مع بعض، وتفهم منطق صعب شوية.
في 2019، Microsoft قررت تنهي الموضوع كله وتطلع XLOOKUP. الفكرة: دالة واحدة بتعمل كل اللي كنت تحلم بيه، بصيغة بسيطة وواضحة.
"XLOOKUP مش مجرد ترقية، دي ثورة. الفرق بين VLOOKUP و XLOOKUP زي الفرق بين الموبايل القديم بالأزرار والسمارت فون. الاتنين بيتصلوا، بس التجربة مختلفة تماماً."
الصيغة الأساسية - فهم الـ 6 باراميترات
=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode])
أول 3 باراميترات إجبارية، آخر 3 اختيارية. تعالى نفهم كل واحد بالتفصيل.
| الباراميتر | إجباري؟ | الشرح |
|---|---|---|
| lookup_value | أه | القيمة اللي بتدور عليها (اسم، رقم، تاريخ، إلخ) |
| lookup_array | أه | العمود (أو الصف) اللي فيه القيمة دي |
| return_array | أه | العمود (أو الصف) اللي عايز ترجع منه النتيجة |
| if_not_found | لا | القيمة اللي تطلع لو القيمة مش موجودة (بدل #N/A) |
| match_mode | لا | نوع المطابقة (دقيقة، تقريبية، wildcards) |
| search_mode | لا | اتجاه البحث (من البداية، من النهاية، ثنائي) |
المرحلة الأولى - الاستخدام البسيط
تعالى نبدأ بأبسط مثال. عندك جدول موظفين:
| كود الموظف | الاسم | القسم | الراتب |
|---|---|---|---|
| E001 | هدى | الموارد البشرية | 12000 |
| E002 | طارق | المالية | 15000 |
| E003 | سيد | المبيعات | 10000 |
عايز تعرف اسم الموظف اللي كوده E002:
=XLOOKUP("E002", A2:A4, B2:B4)
الناتج: طارق
الفكرة بسيطة جداً:
- "E002" → القيمة اللي بدور عليها
- A2:A4 → فين أدور (في عمود الأكواد)
- B2:B4 → من فين أرجع النتيجة (من عمود الأسماء)
المقارنة الكلاسيكية: نفس المثال بـ VLOOKUP
=VLOOKUP("E002", A2:D4, 2, FALSE)
الفروقات في الصيغة:
| الجزء | VLOOKUP | XLOOKUP |
|---|---|---|
| تحديد العمود المرجوع | برقم (2) | بنطاق مباشر (B2:B4) |
| المطابقة الدقيقة | لازم تكتب FALSE | افتراضية بدون كتابة |
| الجدول | كل الجدول (A2:D4) | عمودين بس (نطاق البحث + نطاق الإرجاع) |
| لو ضفت عمود | الصيغة فسدت | الصيغة تفضل صح |
السحر الحقيقي: البحث من الشمال لليمين
دي الميزة اللي مكنتش موجودة في VLOOKUP أبداً. عندك في الجدول السابق، عايز تعرف كود موظف اسمه "طارق":
=XLOOKUP("طارق", B2:B4, A2:A4)
الناتج: E002
في VLOOKUP، الموضوع ده كان مستحيل بدون ما تعيد ترتيب الجدول، أو تستخدم INDEX/MATCH. مع XLOOKUP، إنت بس بتحدد نطاق البحث ونطاق الإرجاع، مش مهم أيهم على الشمال أو اليمين.
المرحلة التانية - الباراميتر الرابع: التعامل مع القيم المفقودة
الباراميتر الرابع (if_not_found) من أحسن إضافات XLOOKUP. بدل ما تشوف #N/A القبيح، إنت بتحدد إيه اللي يظهر لو القيمة مش موجودة.
قبل XLOOKUP
=IFERROR(VLOOKUP("E099", A2:D4, 2, FALSE), "غير موجود")
صيغة طويلة، فيها دالتين، وأقل قابلية للقراءة.
مع XLOOKUP
=XLOOKUP("E099", A2:A4, B2:B4, "غير موجود")
أبسط وأنضف. والأهم: بتفرق بين الخطأ في القيمة المفقودة والأخطاء التانية. IFERROR كانت بتخفي كل الأخطاء، حتى لو فيه مشكلة حقيقية في الصيغة. XLOOKUP بتعالج بس حالة "القيمة غير موجودة".
أمثلة مفيدة لـ if_not_found
| السياق | القيمة المقترحة | السبب |
|---|---|---|
| تقارير عربية | "غير موجود" | أوضح للمستخدم |
| قواعد البيانات الإنجليزية | "N/A" | متعارف عليه |
| حسابات الأرقام | 0 | عشان لا يتأثر إجمالي الجمع |
| جداول التواريخ | "" | الخلية تظهر فاضية |
| ملفات لازم تخلص | "يحتاج مراجعة" | تحديد المهام للمتابعة |
المرحلة التالتة - الباراميتر الخامس: أنواع المطابقة
match_mode بيحدد إزاي XLOOKUP بتقارن. عندنا 4 خيارات:
| القيمة | المعنى | الاستخدام |
|---|---|---|
| 0 (افتراضي) | مطابقة دقيقة | الأكواد، الأسماء، الأرقام المحددة |
| -1 | أقرب قيمة أصغر أو مساوية | الشرائح الضريبية، التقديرات |
| 1 | أقرب قيمة أكبر أو مساوية | الجدولات، فترات السماح |
| 2 | مطابقة بـ Wildcards | البحث الجزئي بـ * و ؟ |
مثال عملي على match_mode = -1: حساب التقديرات
عندك جدول تقديرات:
| الحد الأدنى | التقدير |
|---|---|
| 0 | راسب |
| 50 | مقبول |
| 65 | جيد |
| 75 | جيد جداً |
| 85 | ممتاز |
لو طالب أخد 72 درجة، تقديره إيه؟
=XLOOKUP(72, A2:A6, B2:B6, "غير محدد", -1)
الناتج: جيد (لأن 72 أكبر من 65 وأقل من 75)
match_mode = -1 معناها: لو مفيش مطابقة دقيقة، خد أقرب قيمة أصغر أو تساوي. ده مفيد جداً في الشرائح والمستويات.
مثال عملي على match_mode = 2: البحث الجزئي
عندك قائمة عملاء وعايز تدور على واحد بجزء من اسمه:
=XLOOKUP("*محمد*", A2:A100, B2:B100, "غير موجود", 2)
هترجعلك أول صف فيه "محمد" في الاسم. الـ * معناها "أي حروف". مفيد جداً لما تكون مش متأكد من الإملاء الكامل.
المرحلة الرابعة - الباراميتر السادس: اتجاه البحث
search_mode بيحدد البحث يبدأ منين:
| القيمة | المعنى | الاستخدام المثالي |
|---|---|---|
| 1 (افتراضي) | من البداية للنهاية | معظم الحالات |
| -1 | من النهاية للبداية | أحدث ظهور لقيمة مكررة |
| 2 | بحث ثنائي تصاعدي | جداول كبيرة جداً مرتبة |
| -2 | بحث ثنائي تنازلي | جداول كبيرة جداً مرتبة عكسياً |
مثال عملي: آخر سعر للمنتج
عندك جدول مبيعات بنفس المنتج بأسعار مختلفة على مدار الوقت:
| التاريخ | المنتج | السعر |
|---|---|---|
| 2024-01-15 | تيشيرت | 150 |
| 2024-06-10 | تيشيرت | 180 |
| 2025-01-05 | تيشيرت | 200 |
عايز آخر سعر للتيشيرت:
=XLOOKUP("تيشيرت", B2:B4, C2:C4, "غير موجود", 0, -1)
الناتج: 200 (آخر صف فيه "تيشيرت")
لو استخدمت search_mode = 1 (الافتراضي)، كان هيرجعلك 150 (أول ظهور).
5 سيناريوهات حقيقية - بنطبق فيها كل اللي اتعلمناه
السيناريو الأول: نظام إدارة المخزون
عندك جدول مخزون، وعايز تعرف الكمية المتاحة من منتج معين:
| الكود | المنتج | الكمية المتاحة | الحد الأدنى |
|---|---|---|---|
| P001 | تيشيرت أبيض | 250 | 50 |
| P002 | بنطلون جينز | 30 | 50 |
| P003 | جاكيت شتوي | 0 | 20 |
الصيغة لمعرفة حالة المنتج:
=IF(XLOOKUP(A2, ProductsList, QtyList, 0)=0,
"نفذ المخزون",
IF(XLOOKUP(A2, ProductsList, QtyList) < XLOOKUP(A2, ProductsList, MinList),
"كمية منخفضة",
"متوفر"))
هنا بنستخدم XLOOKUP أكتر من مرة عشان نعرف الكمية المتاحة والحد الأدنى ونقارن بينهم.
السيناريو التاني: حساب العمولات الشرائحية
عندك جدول عمولات حسب المبيعات:
| الحد الأدنى للمبيعات | نسبة العمولة |
|---|---|
| 0 | 0% |
| 10000 | 3% |
| 50000 | 5% |
| 100000 | 8% |
| 200000 | 12% |
لو B2 فيها مبيعات الموظف، الصيغة لحساب العمولة:
=B2 * XLOOKUP(B2, A2:A6, B2:B6, 0, -1)
match_mode = -1 بياخد أقرب قيمة أصغر، يعني لو الموظف باع 75,000 جنيه، هيوقع في شريحة الـ 50,000 (نسبة 5%).
السيناريو التالت: البحث في صفوف وأعمدة (HLOOKUP بدل)
عندك جدول أسعار حسب الفصل والمنتج:
| الربيع | الصيف | الخريف | الشتاء | |
|---|---|---|---|---|
| تيشيرت | 150 | 180 | 120 | 100 |
| جاكيت | 250 | 200 | 350 | 500 |
عايز سعر التيشيرت في الصيف. هنحتاج XLOOKUP مزدوجة:
=XLOOKUP("تيشيرت", A2:A3, XLOOKUP("الصيف", B1:E1, B2:E3))
الـ XLOOKUP الداخلية بترجع كل عمود الصيف، والخارجية بتاخد منه الصف الخاص بالتيشيرت. الناتج: 180.
السيناريو الرابع: مطابقة بيانات بين ملفين
عندك ملف فاتورات، وعايز تربط كل فاتورة ببيانات العميل من ملف العملاء:
=XLOOKUP(A2, CustomersFile!A:A, CustomersFile!C:C, "عميل غير مسجل")
كل لما تضيف فاتورة، Excel هيدور تلقائياً على بيانات العميل في الملف التاني.
السيناريو الخامس: استخراج عمود كامل
دي حيلة قوية. XLOOKUP تقدر ترجع نطاق كامل، مش بس قيمة واحدة. لو عملت:
=XLOOKUP("E002", A2:A4, B2:D4)
هترجعلك 3 خلايا في صف واحد: الاسم، القسم، والراتب لـ E002 كله. ده اسمه Spill في Excel 365، وبيخليك تجيب بيانات كاملة من غير ما تكتب 3 صيغ.
أخطاء شائعة بتقابل اللي بيستخدم XLOOKUP لأول مرة
الخطأ الأول: عدم تساوي حجم النطاقات
غلط:
=XLOOKUP("A", A2:A10, B2:B5)
هنا lookup_array فيه 9 خلايا، لكن return_array فيه 4 خلايا. هيطلع #VALUE!. لازم النطاقين يكونوا بنفس الحجم.
الخطأ التاني: نسيان match_mode في حالات معينة
للبحث الدقيق، الافتراضي صح. لكن لو بتعمل بحث في شرائح أو نطاقات، لازم تحدد match_mode = -1 أو 1، وإلا هترجعلك #N/A لو القيمة مش موجودة بالظبط.
الخطأ التالت: استخدام Wildcards بدون match_mode = 2
غلط:
=XLOOKUP("*محمد*", A2:A100, B2:B100)
الناتج: #N/A، لأن الافتراضي مطابقة دقيقة. مش هيلاقي "*محمد*" كنص حرفي.
صح:
=XLOOKUP("*محمد*", A2:A100, B2:B100, "غير موجود", 2)
الخطأ الرابع: التعامل مع القيم المكررة
XLOOKUP الافتراضي بترجع أول مطابقة. لو في القيمة مكررة وعايز آخر ظهور، استخدم search_mode = -1.
الخطأ الخامس: استخدامها في إصدار غير مدعوم
XLOOKUP متوفرة بس في Excel 2021 و Excel 365 و Excel Online. لو إنت شغال على Excel 2019 أو أقدم، الدالة مش هتشتغل. لو ملفك هيتفتح على أجهزة بإصدارات قديمة، لازم تستخدم VLOOKUP أو INDEX/MATCH.
الخطأ السادس: الإفراط في استخدام نطاقات كاملة
غلط في الأداء:
=XLOOKUP(A2, B:B, C:C)
ده بيخلي Excel يبحث في عمودين كاملين (مليون صف لكل واحد). أفضل تحديد النطاق بدقة:
=XLOOKUP(A2, B2:B10000, C2:C10000)
XLOOKUP مقابل المنافسين - من الأقوى؟
| الميزة | VLOOKUP | INDEX/MATCH | XLOOKUP |
|---|---|---|---|
| البحث من الشمال لليمين | أه | أه | أه |
| البحث من اليمين للشمال | لا | أه | أه |
| التعامل مع الأخطاء بسهولة | تحتاج IFERROR | تحتاج IFERROR | مدمج (if_not_found) |
| صعوبة الكتابة | سهل | صعب | سهل |
| المرونة في إضافة أعمدة | تكسر الصيغة | تظل سليمة | تظل سليمة |
| السرعة على الجداول الكبيرة | متوسط | سريع | أسرع |
| البحث من النهاية للبداية | لا | صعب | سهل (search_mode) |
| متاحة في الإصدارات القديمة | أه (كل الإصدارات) | أه (كل الإصدارات) | لا (2021+) |
"الدالة المناسبة مش الأقوى، الدالة المناسبة هي اللي بتشتغل في بيئتك. لو فريقك على Excel 2019، XLOOKUP مش هتفيدك. الإتقان الحقيقي إنك تعرف كل الخيارات وتختار الصح."
التطبيق في Google Sheets - في فروقات؟
الأخبار الكويسة: Google Sheets أضاف XLOOKUP في 2022. الصيغة بنفس الشكل بالظبط، وبتشتغل بنفس الطريقة. لو إنت بتنقل ملفات بين Excel و Google Sheets، XLOOKUP هتشتغل في الاتنين.
بس Google Sheets كان عنده دوال بحث قوية قبل ده، أهمها:
| الدالة | متاحة في | الميزة |
|---|---|---|
| XLOOKUP | Excel 2021+, Google Sheets | الأقوى والأمرن |
| VLOOKUP | الكل | الكلاسيكية والأشهر |
| FILTER | Excel 365, Google Sheets | تصفية متعددة الشروط |
| QUERY | Google Sheets فقط | استعلامات بصيغة SQL |
QUERY في Google Sheets دالة فريدة بتسمحلك تعمل استعلامات معقدة بأسلوب SQL. مفيدة جداً في الجداول الكبيرة.
نصايح من الواقع
نصيحة 1: استخدم Named Ranges مع XLOOKUP. بدل ما تكتب A2:A1000 في كل صيغة، سمي العمود "Codes" واستخدمه:
=XLOOKUP(A2, Codes, Names, "غير موجود")
الصيغة بقت أوضح، ولو ضفت بيانات للنطاق، هتتحدث تلقائياً.
نصيحة 2: دمج XLOOKUP مع جداول Excel (Tables). لما تحول البيانات لـ Table (Ctrl+T)، النطاقات بتتحدث تلقائياً مع إضافة بيانات جديدة. ده بيوفر عليك تعديل الصيغ كل ما تضيف صف.
نصيحة 3: استخدم XLOOKUP للتحقق من وجود قيم. مفيد جداً في عمليات الـ data validation.
=IF(XLOOKUP(A2, ValidIDs, ValidIDs, "")="", "ID غير صحيح", "OK")
نصيحة 4: لما تشتغل بـ XLOOKUP المتداخلة، جربها على عينة صغيرة الأول. الصيغ المعقدة لو فيها خطأ، صعب تكتشفه.
نصيحة 5: استخدم if_not_found بشكل واعي. القيمة الافتراضية لازم تكون منطقية في سياقك. مثلاً للأرقام المالية، 0 ممكن يلخبط الإجماليات. ""، "N/A"، أو رسالة خطأ ممكن تكون أنسب.
نصيحة 6: لو شغال على ملف ضخم وفيه أداء بطيء، فكر في تحويل XLOOKUP إلى Power Query. للجداول اللي فوق 100,000 صف، Power Query أسرع بكتير.
نصيحة 7: XLOOKUP مع Dynamic Arrays في Excel 365 بتفتح إمكانيات لانهائية. تقدر ترجع نتائج متعددة من بحث واحد، وده بيقلل عدد الصيغ في الملف.
متى تستخدم XLOOKUP ومتى تتجنبها؟
| الموقف | الحل المقترح | السبب |
|---|---|---|
| Excel 2021 / 365 / Online | XLOOKUP | الأقوى والأمرن |
| Excel 2019 أو أقدم | INDEX/MATCH | المرن المتاح |
| بيانات بسيطة جداً | VLOOKUP أو XLOOKUP | سرعة الكتابة |
| تصفية متعددة الشروط | FILTER | للحصول على عدة نتائج |
| جداول فوق 500,000 صف | Power Query | أسرع وأكفأ |
| ملف هيتفتح على أجهزة مختلفة | VLOOKUP | التوافق العام |
تطبيق متقدم: بناء داشبورد مبيعات
تخيل إنك بتبني داشبورد لمدير المبيعات. عندك ملف فيه:
- شيت "Sales": تفاصيل كل عملية بيع
- شيت "Products": كل المنتجات وأسعارها
- شيت "Employees": بيانات البائعين
- شيت "Dashboard": اللي المدير هيشوفه
الـ Dashboard هيكون فيه:
| المعلومة | الصيغة المستخدمة |
|---|---|
| اسم البائع الأعلى مبيعاً | =XLOOKUP(MAX(SalesByRep), SalesByRep, RepNames) |
| أعلى منتج مبيعاً | =XLOOKUP(MAX(SalesByProduct), SalesByProduct, ProductNames) |
| إجمالي مبيعات بائع معين | =XLOOKUP(B2, RepNames, TotalSales, 0) |
| تقدير أداء البائع | =XLOOKUP(SalesAmount, RatingThresholds, RatingLabels, "غير محدد", -1) |
| آخر عملية بيع للمنتج | =XLOOKUP(ProductCode, ProductsList, DatesList, "لا توجد", 0, -1) |
| سعر المنتج الحالي | =XLOOKUP(ProductCode, ProductsList, PriceList, 0) |
الجمال في الموضوع: كل صيغة بسيطة وواضحة. مهما كبر الملف، XLOOKUP بتتعامل معاه بكفاءة. ولو ضفت أعمدة جديدة في أي شيت، الصيغ هتفضل صح.
كل لما تيجي بيانات جديدة، الداشبورد بيتحدث تلقائياً. والمدير بيشوف الصورة الكاملة في ثواني.
أسئلة شائعة عن دالة XLOOKUP
هل XLOOKUP أسرع من VLOOKUP؟
أه، في الجداول الكبيرة. السبب إن XLOOKUP بتدور في عمود واحد بس (lookup_array)، بينما VLOOKUP بتقرا كل الأعمدة من البداية لحد العمود المطلوب. الفرق محسوس في الجداول اللي فوق 10,000 صف.
هل XLOOKUP بتشتغل في Excel على الموبايل؟
أه، بتشتغل في Excel على iOS و Android. كل الباراميتر مدعومة. بس لازم نسخة Microsoft 365 الحديثة.
إيه الفرق بين XLOOKUP و XMATCH؟
XMATCH بترجع موقع القيمة في النطاق (رقم الصف أو العمود)، مش القيمة نفسها. XLOOKUP بترجع القيمة المقابلة. XMATCH بديل لـ MATCH القديمة، بنفس فلسفة التحديث اللي حصلت في XLOOKUP.
هل ممكن أعمل XLOOKUP بشروط متعددة؟
أه، بطريقة ذكية. لو عايز تدور بشرطين، استخدم العامل & لدمج الأعمدة:
=XLOOKUP(A2 & B2, ProductsList & ColorsList, PricesList)
ده بيدور عن المنتج اللي مع لون معين. بس لازم تتأكد إن المركب ده فريد في النطاق.
إزاي أرجع أكتر من قيمة بـ XLOOKUP واحدة؟
لو حددت return_array كنطاق متعدد الأعمدة، XLOOKUP هترجع كل البيانات المقابلة في صف واحد:
=XLOOKUP("E002", A2:A100, B2:E100)
هترجعلك الاسم، القسم، الراتب، وتاريخ التعيين دفعة واحدة. ده بيشتغل بس في Excel 365 مع Dynamic Arrays.
هل ممكن أستخدم XLOOKUP بين ملفات مختلفة؟
أه، بنفس الطريقة. مثلاً:
=XLOOKUP(A2, '[Customers.xlsx]Sheet1'!A:A, '[Customers.xlsx]Sheet1'!B:B, "غير موجود")
الملف التاني لازم يكون مفتوح أو الصيغة هتطلع #REF!. لتجنب ده، استخدم Power Query للربط بين الملفات.
إيه أفضل بديل لـ XLOOKUP في Excel القديم؟
INDEX/MATCH هي البديل الأقوى. الصيغة شكلها كده:
=INDEX(B2:B100, MATCH("E002", A2:A100, 0))
أصعب في الكتابة، لكن بتعمل نفس وظيفة XLOOKUP الأساسية. لمعالجة الأخطاء، لفها بـ IFERROR.
هل XLOOKUP بتدعم Wildcards زي *؟
أه، بشرط تحدد match_mode = 2. مثلاً =XLOOKUP("*محمد*", A:A, B:B, "غير موجود", 2). تقدر تستخدم * لأي عدد حروف، و ؟ لحرف واحد. مفيد للبحث الجزئي.
الخلاصة - إيه اللي محتاج تخده من المقال ده؟
XLOOKUP هي مستقبل البحث في Excel. لو فريقك على Excel 365 أو Excel 2021، مفيش سبب تستمر تستخدم VLOOKUP. الفروقات في المرونة، الأداء، وقابلية القراءة كبيرة جداً.
أهم النقط:
الصيغة الأساسية: 3 باراميتر إجبارية (lookup_value, lookup_array, return_array)، و 3 اختيارية بتفتح إمكانيات قوية.
الميزة الأكبر: البحث في أي اتجاه، مش بس من الشمال لليمين زي VLOOKUP.
التعامل مع الأخطاء: if_not_found بتغني عن IFERROR وبتخلي الصيغة أنضف.
المرونة: match_mode و search_mode بيفتحوا إمكانيات للبحث التقريبي، الـ Wildcards، وآخر ظهور للقيمة.
الأداء: أسرع من VLOOKUP في الجداول الكبيرة.
التوافق: Excel 2021 وما بعدها، Excel 365، Excel Online، و Google Sheets.
ولو إنت لسه مرتبط بـ VLOOKUP، خد قرار بسيط: في كل مرة هتكتب VLOOKUP جديدة، حاول تكتبها XLOOKUP بدالها. خلال أسبوعين هتلاقي إن الصيغة الجديدة بقت طبيعية، وهتتعجب إزاي كنت بتشتغل بدونها.
وأهم نصيحة: اللعب بالدالة على ملفات حقيقية أحسن من ألف مقال. افتح ملف عندك دلوقتي، اختار صيغة VLOOKUP أو INDEX/MATCH، وحاول تترجمها لـ XLOOKUP. كل تطبيق هيرسخ المفهوم في دماغك أكتر من القراءة.
الدوال أدوات، والإتقان بيجي بالاستخدام، مش بالحفظ.
التعليقات
سيتم تحميل نموذج التعليق عند الضغط