20. اكسل كيفية المقارنة بين عمودين. كيفية تكملة ورقة من أخرى.
مقارنة بين عمودين
نأخذ كمثال ورقة العمل التالية التي تضم قائمة من الموظفين:
نريد ملء العمود E "مسؤول" ب"نعم" بالنسبة لمسؤولي المؤسسة. قائمة الموظفين المسؤولين مسجلة في ورقة أخرى: « Sheet2 » :
أفترض أن كلا الورقتين ينتميان إلى نفس المصنف ، ولا يحتوي العمود "الاسم" على أي تكرار.
اكتب هذه الصيغة في الخلية E2 وانسخها في العمود E :
=IF(COUNTIF(Sheet2!$A$2:$A$179,A2)>0,"نعم","")
تكملة ورقة من أخرى
استعمال الدالة VLOOKUP
في المثال السابق أضفنا الإشارة "نعم" لمسؤولي المؤسسة. نريد الآن إضافة منصب المسؤولية لكل مسؤول و ذلك باستخراجه من العمود B في الورقة "Sheet2".
نستخدم الصيغة :
=VLOOKUP(A2,Sheet2!$A$1:$B$179,2,FALSE)
ولكن كما نرى من المقتطف التالي ، فإن النتيجة ليست مرضية :
في الواقع ، تُرجع الدالة VLOOKUP الخطأ #N/A عندما لا يتم العثور على القيمة المطلوبة.
الحل هو استخدام الدالة IFERROR. ترجع هذه الدالة قيمة الوسيطة الأولى إذا لم تكن هذه الوسيطة خطأ. خلاف ذلك ، تقوم الدالة بإرجاع قيمة الوسيطة الثانية. لذلك ، بالنسبة للحالة الحالية ، أعطي في الوسيطة الثانية السلسلة الفارغة "".
اكتب هذه الصيغة في الخلية F2 وانسخها في العمود F :
=IFERROR(VLOOKUP(A2,Sheet2!$A$1:$B$179,2,FALSE),"")
النتيجة :
استخدام الدالتان MATCH و INDEX
يمكن حل نفس المشكلة باستخدام الصيغة :
=INDEX(Sheet2!$A$2:$B$179,MATCH(A2,Sheet2!$A$2:$A$179,0),2)
ترجع الدالة MATCH في هذه الصيغة موضع القيمة الموجودة في A2 في النطاق A2:A179 من الورقة "Sheet2".
تُرجع الدالة INDEX القيمة الموجودة في النطاق A2:B179 من الورقة "Sheet2" عند تقاطع
- السطر الذي رقمه هو القيمة التي يتم إرجاعها بواسطة MATCH و
- العمود 2.
ولكن ، مرة أخرى ، تُرجع الدالة MATCH الخطأ #N/A عندما لا يتم العثور على القيمة المطلوبة.
لتجنب عرض هذا الخطأ ، يفضل استخدام الصيغة :
=IFERROR(INDEX(Sheet2!$A$2:$B$179,MATCH(A2,Sheet2!$A$2:$A$179,0),2),"")