كيفية ملء مربع التحرير والسرد (Combo Box) ببيانات النطاق المسمى في Excel؟
يمكنك تحديد مربع تحرير وسرد (ActiveX Control) ببيانات نطاق معين عن طريق إضافة النطاق إلى خصائص ListFillRange الخاصة بمربع التحرير والسرد. ولكن هل تعرف كيفية ملء مربع التحرير والسرد ببيانات النطاق المسمى في Excel؟ على سبيل المثال، قد قمت بتسمية نطاق من الخلايا في ورقة العمل الخاصة بك، والآن تحتاج إلى تحديد اسم هذا النطاق في مربع التحرير والسرد. عند اختيار اسم النطاق في أحد مربعات التحرير والسرد، سيتم ملء جميع قيم الخلايا في هذا النطاق المسمى تلقائيًا في مربع تحرير وسرد آخر. سيقدم لك هذا المقال طريقة VBA لحل هذه المشكلة.
املأ مربع التحرير والسرد ببيانات النطاق المسمى باستخدام كود VBA
املأ مربع التحرير والسرد ببيانات النطاق المسمى باستخدام كود VBA
يرجى اتباع الخطوات التالية لملء مربع التحرير والسرد ببيانات النطاق المسمى في Excel.
1. يرجى تحديد جميع العناوين (في هذه الحالة، أختر A1:E1) في ورقة العمل الخاصة بك، ثم اكتب اسمًا في مربع الأسماء كما هو موضح في لقطة الشاشة أدناه.
2. حدد بيانات كل عمود باستثناء العنوان الخاص به، ثم قم بتسمية العمود بشكل منفصل في مربع الأسماء. انظر لقطة الشاشة:
في هذه الحالة، قمت بتسمية النطاقات A2:A8، B2:B8، C2:C8، D2:D8 و E2:E8 كالتاريخ، المتجر، العناصر، المبيعات وأيام الأسبوع على التوالي.
3. بعد ذلك، أدخل مربع تحرير وسرد عن طريق النقر فوق Developer > Insert > Combo Box (ActiveX Control). انظر لقطة الشاشة:
4. كرر الخطوة 3 لإدراج مربع تحرير وسرد آخر في ورقة العمل.
5. انقر بزر الماوس الأيمن على علامة ورقة العمل، ثم انقر فوق عرض الكود من قائمة السياق. انظر لقطة الشاشة:
6. في نافذة Microsoft Visual Basic for Applications التي ستفتح، يرجى نسخ ولصق الكود التالي VBA في نافذة الكود.
كود VBA: ملء مربع التحرير والسرد ببيانات النطاق المسمى
Private Sub ComboBox1_Change()
'Updated by Extendoffice 2018/1/30
Dim xRg As Range
Set xRg = Range(Me.ComboBox1.Text)
Me.ComboBox2.List = Application.WorksheetFunction.Transpose(xRg)
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim xRg As Range
Set xRg = Range("Headers")
Me.ComboBox1.List = Application.WorksheetFunction.Transpose(xRg)
End Sub
ملاحظة: في الكود، ComboBox1 هو اسم مربع التحرير والسرد الذي ستقوم بإدراج جميع أسماء النطاقات فيه، وComboBox2 هو اسم مربع التحرير والسرد الذي سيتم ملؤه ببيانات النطاق المسمى المحدد. "Headers" هو اسم النطاق الذي قمت بإنشائه في الخطوة 1.
7. قم بإيقاف تشغيل وضع التصميم عن طريق النقر فوق Developer > Design Mode.
8. انقر فوق أي خلية في ورقة العمل لتفعيل الكود. انقر فوق زر السهم في أول مربع تحرير وسرد، يمكنك رؤية أن جميع النطاقات المُسماة مدرجة داخله. انظر لقطة الشاشة:
عند تحديد نطاق مسمى في أول مربع تحرير وسرد، سيتم ملء بيانات الخلية المقابلة في ثاني مربع تحرير وسرد كما هو موضح في لقطة الشاشة أدناه:
إنشاء قائمة منسدلة بسهولة مع خانات الاختيار في Excel:
الـ قائمة منسدلة مع خانات الاختيار خاصية الـ Kutools لـ Excel يمكنها مساعدتك في إنشاء قائمة منسدلة مع خانات اختيار بسهولة في نطاق محدد، ورقة العمل الحالية، المصنف الحالي أو جميع المصنفات المفتوحة بناءً على احتياجاتك.
قم بتنزيله وتجربته الآن! (30- يوم تجريبي مجاني)
مقالات ذات صلة:
- كيفية نسخ قيمة مربع التحرير والسرد إلى الخلية النشطة في Excel؟
- كيفية عرض تنسيق التاريخ في مخرجات مربع التحرير والسرد في Excel؟
- كيفية منع أو تعطيل الكتابة في مربع التحرير والسرد في Excel؟
- كيفية ملء مربع التحرير والسرد ببيانات محددة عند فتح المصنف؟
- كيفية ملء الخلايا الأخرى تلقائيًا عند تحديد القيم في قائمة منسدلة في Excel؟
أفضل أدوات زيادة الإنتاجية لمجموعة Office
عزز مهاراتك في Excel مع Kutools لـ Excel، وتمتع بكفاءة غير مسبوقة. يقدم Kutools لـ Excel أكثر من300 ميزة متقدمة لتعزيز الإنتاجية وتوفير وقت الحفظ. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
Office Tab يجلب تجربة التبويبات إلى Office، ويجعل عملك أسهل بكثير
- فعّل تحرير وقراءة المستندات عبر التبويبات في Word وExcel وPowerPoint
- افتح وأنشئ مستندات متعددة في تبويبات جديدة ضمن نفس النافذة، بدلاً من فتحها في نوافذ جديدة.
- يمنحك زيادة إنتاجية تصل إلى50% ويوفر عليك مئات النقرات يومياً!