السلام عليكم ورحمة الله وبركاته
كثيراً ما يسأل المقبلون على تعلم الإكسيل حول كيفية إنشاء قائمة منسدلة بشكل ديناميكي أي أنه كلما وضعت بيانات جديدة يتم إدراج تلك البيانات في القائمة بشكل تلقائي ، وتوجد طرق كثيرة لكني سأخص منها أفضلها من وجهة نظري
بفرض أن لديك نطاق من البيانات في النطاق A1:B4 .. والمطلوب عمل قائمة منسدلة في الخلية D7 على سبيل المثال
نقوم بتحديد النطاق المطلوب ، ومن التبويب Home نختار Format as Table الموجودة على يمين أيقونة التنسيق الشرطي Conditional Formatting ، ونختار أي نمط من أنماط الجدول الموجودة كما بالشكل التالي
الآن ستظهر لك نافذة فيها النطاق الذي قمت بتحديده ، وهذه النافذة فائدتها تحويل النطاق لجدول ، نقوم بالنقر على OK
نلاحظ تغير شكل النطاق A1:B4 وبهذا نكون قد حولنا النطاق إلى جدول ، ولمعرفة اسم الجدول اذهب للتبويب Design وستجد اسم الجدول Table Name
بعد أن قمنا بتحويل النطاق لجدول ، الآن حدد الخلية المطلوب إنشاء قائمة منسدلة فيها وهي الخلية D7 ، ثم ننتقل للتبويب Data ثم ننقر Data Validation ثم من الحقل المسمى Allow نختار List ، وفي الحقل المسمى Source سنكتب المعادلة بالشكل التالي :
CODE
=INDIRECT("Table1[Names]")
حيث يتم استخدام INDIRECT يليها قوس مفتوح ثم قوس تنصيص ثم اسم الجدول Table1 يليه اسم الحقل الموجود داخل الجدول بين أقواس بهذا الشكل [] ، والحقل هنا هو حقل الأسماء Names ثم توضع اقواس تنصيص أخرى ثم إغلاق المعادلة بالقوس
الآن ننتقل لآخر خطوة للتأكد من أن القائمة المنسدلة ستتحدث بشكل تلقائي .. نقوم بتحديد آخر خلية بالجدول وهي الخلية B4 ثم نضغط Tab من لوحة المفاتيح ، فنجد أنه قد تم إدراج صف جديد ، نقوم بكتابة بيانات في الصف الجديد ، ثم نذهب للخلية D7 للإطلاع على القائمة المنسدلة مرة أخرى
رابط الملف من هنا
أرجو أن أكون وفقت في شرح الموضوع ، وتقبلوا وافر تقديري واحترامي
أخوكم في الله / ياسر خليل أبو البراء