يعد SWITCH الخاص بـ Excel دالة منطقية تُستخدم بشكل أساسي لمعالجة البيانات. يقوم بتقييم تعبير مقابل قائمة من القيم، ويعيد نتيجة مطابقة للقيمة المطابقة الأولى.
تأتي شعبيتها من بساطتها النسبية مقارنة بوظائف Excel الأخرى التي تؤدي مهام مماثلة، مما يعني أنه من الأسهل قراءة الصيغة وتصحيح أي مشكلات.
في هذا الدليل، سأشرح كيفية استخدام الوظيفة بمثال واقعي، وتقييم فوائدها مقارنة بالوظائف الأخرى، وتغطية بعض قيودها.
أضافت Microsoft وظيفة SWITCH إلى Excel في عام 2016، لذا فهي غير متوفرة في الإصدارات السابقة. إذا حاولت استخدام SWITCH في إصدار غير متوافق، فسيقوم Excel بإرجاع #NAME؟ خطأ .
بناء جملة SWITCH
قبل أن أعرض لك مثالاً واقعيًا لـ SWITCH أثناء العمل، دعنا نلقي نظرة على بناء الجملة:
=SWITCH(e,v1,r1,v2,r2,d)
أين
- ه هو التعبير (القيمة التي سيتم تقييمها)،
- الإصدار 1 هي القيمة الأولى التي يجب مقارنتها بالتعبير،
- ص1 هي النتيجة التي سيتم إرجاعها إذا الإصدار 1 مباريات ه,
- الإصدار 2 هي القيمة الثانية التي يجب مقارنتها بالتعبير،
- ص2 هي النتيجة التي سيتم إرجاعها إذا الإصدار 2 مباريات ه، و
- د (اختياري) هي القيمة الافتراضية إذا ه لا يتطابق مع أي من ضد قيم.
بينما لا يوجد سوى اثنين ضد–ص الاقتران الموضح هنا في بناء الجملة (الإصدار 1–ص1 و الإصدار 2–ص2)، يمكنك الحصول على ما يصل إلى 126 زوجًا بشكل عام. نظرًا لأن SWITCH تُرجع نتيجة مطابقة لـ أولاً مطابقة القيمة، من المهم أن تفكر بعناية في ترتيب الخاص بك ضد–ص الاقتران.
إذا لم تقم بتضمين الاختياري
د
ولا شيء من القيم (
الإصدار #
) يطابق التعبير (
ه
)، فسيقوم Excel بإرجاع الخطأ #N/A .
التبديل في العمل
اسمح لي أن أعرض لك وظيفة SWITCH في سيناريو حقيقي. في هذا الجدول، لدي قائمة بالطلاب ودرجاتهم، وأحتاج إلى تحديد خطواتهم التالية بناءً على تلك الدرجات.
نظرًا لوجود ثلاثة احتمالات مختلفة للدرجات (A وB وC)، فأنا بحاجة إلى دمج كل هذه الاحتمالات في صيغة SWITCH. لذلك، في الخلية C2، سأكتب
=SWITCH((@Grade),"A","Automatically advance to next level","B","Continue at this level","C","Move down to previous level","GRADE REQUIRED")
إذا كانت أي من القيم أو النتائج في صيغة SWITCH الخاصة بك ليست رقمية، فستحتاج إلى إحاطتها بعلامات اقتباس.
على الرغم من أن هذا يبدو معقدًا في البداية، إلا أنه عند تفصيله، يصبح منطقيًا تمامًا:
- أولاً، أريد أن يقوم Excel بتقييم التعبيرات الموجودة في عمود “الدرجة” في الجدول المنسق الخاص بي، ولهذا السبب كتبت (@Grade) كقيمة ه.
- ثم لدي ثلاثة ضد–ص الاقتران: “A” سيُرجع “التقدم تلقائيًا إلى المستوى التالي”، و”B” سيُرجع “المتابعة عند هذا المستوى”، و”C” سيُرجع “الانتقال إلى المستوى السابق”.
- أخيرًا، بعد الاقتران النهائي، ذكرت “الدرجة المطلوبة” كقيمة د، وهي النتيجة إذا لم تكن أي من القيم (الإصدار #) يطابق التعبير (ه).
بعد الضغط على Enter، نظرًا لأن بياناتي موجودة في جدول Excel منسق، سيتم ملء بقية العمود C تلقائيًا.
لاحظ كيف تحتوي الخلية C8 على “الدرجة المطلوبة”، لأن التعبير الموجود في الخلية B8 لم يتطابق مع أي من القيم الموجودة في صيغة SWITCH الخاصة بي.
إذا أردت تغيير المخرجات في العمود C، فسأعود إلى الخلية C2، وأعدل الصيغة في شريط الصيغة، ثم اضغط على Enter. سيتم بعد ذلك تطبيق هذا التغيير تلقائيًا على الخلايا الأخرى في العمود C.
لماذا نستخدم SWITCH بدلاً من IF أو IFS أو XLOOKUP؟
ربما تتساءل عن سبب استخدامك لـ SWITCH على بعض وظائف Excel الأخرى التي تنفذ إجراءات مماثلة، مثل IF وIFS وXLOOKUP. فيما يلي بعض الأسباب:
تجنب تكرار التعبير
لإنشاء نفس النتائج في الجدول أعلاه باستخدام IF أو IFS، يجب أن أكرر التعبير في كل مرة:
=IFS((@Grade)="A","Automatically advance to next level",(@Grade)="B","Continue at this level",(@Grade)="C","Move down to previous level")
ومع ذلك، باستخدام الدالة SWITCH، لا بد لي من ذكر التعبير مرة واحدة فقط في بداية الصيغة:
=SWITCH((@Grade),"A","Automatically advance to next level","B","Continue at this level","C","Move down to previous level","GRADE REQUIRED")
ونتيجة لذلك، أصبحت وظيفة SWITCH أسهل في القراءة، وأقل عرضة لأخطاء الكتابة، وأسهل في المراجعة إذا كانت هناك مشكلة.
احتفظ بكل شيء في مكان واحد
كما هو الحال مع SWITCH، تقارن الدالة XLOOKUP تعبيرًا بقائمة من القيم، وتقوم بإرجاع قيمة مقابلة. ومع ذلك، مع XLOOKUP، تكون قائمة القيم في جدول منفصل، بينما يقوم SWITCH بدمجها جميعًا في صيغة واحدة. وهذا يعني أنه ليس لديك أي بيانات عائمة، وبالتالي يظل جدول بيانات Excel الخاص بك مرتبًا.
مجموعة واحدة من الأقواس
إذا اخترت استخدام دوال IF المتداخلة لتحقيق نفس النتائج في الجدول أعلاه، فسيتعين علي استخدام مجموعة جديدة من الأقواس لكل وسيطة IF:
=IF((@Grade)="A","Automatically advance to next level",IF((@Grade)="B","Continue at this level",IF((@Grade)="C","Move down to previous level","GRADE REQUIRED")))
ونتيجة لذلك، تنتهي الصيغة بشكل مربك بثلاثة أقواس إغلاق، وسيكون تصحيح أي مشكلات في بناء الجملة أكثر صعوبة. من ناحية أخرى، عند استخدامه على مستواه الأساسي دون أي وظائف إضافية أخرى، يتطلب SWITCH زوجًا واحدًا فقط من الأقواس.
عيوب التبديل
على الرغم من أن SWITCH يتمتع بالعديد من الفوائد، إلا أن هناك بعض القيود التي يجب وضعها في الاعتبار قبل البدء في العمل على جدول بيانات Excel الخاص بك:
- لا يمكنك استخدام عوامل التشغيل (مثل ) أو المطابقات التقريبية مع بناء جملة SWITCH القياسي. بدلاً من ذلك، يقتصر SWITCH على المطابقة التامة فقط.
- إذا كان لديك الكثير من القيم والنتائج المحتملة، فإن إنشاء صيغة SWITCH الخاصة بك في المقام الأول سوف يستغرق وقتًا طويلاً. أنا شخصياً أوصي باستخدام ما لا يزيد عن سبعة أو ثمانية أزواج من القيمة والنتيجة في صيغة SWITCH الخاصة بك.
- SWITCH هي وظيفة غير مرنة نسبيًا. على سبيل المثال، يمكن لـ XLOOKUP إرجاع صفوف وأعمدة كاملة من البيانات، بدلاً من مجرد قيمة واحدة.
- نظرًا لأن SWITCH يتطلب الكثير من الفواصل (وعلامات الاقتباس إذا كنت تقوم بتضمين قيم غير رقمية)، فمن السهل ارتكاب خطأ إذا قمت بكتابة الصيغة يدويًا.
يعد SWITCH مجرد إحدى الطرق العديدة المختلفة لاستخدام البيانات في جدول Excel. قد تفكر أيضًا في استخدام INDEX للبحث عن القيم، أو MATCH للعثور على موضع القيمة، أو INDEX وMATCH معًا لإنشاء بحث ثنائي الاتجاه.
(العلامات للترجمة)مايكروسوفت(ر)مايكروسوفت إكسل(ر)مايكروسوفت 365