كيفية ملء مربع التحرير والسرد (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؟
أفضل أدوات الإنتاجية لمكتب العمل
عزز مهاراتك في Excel مع Kutools لـ Excel، واختبر الكفاءة كما لم يحدث من قبل. Kutools لـ Excel يقدم أكثر من300 ميزة متقدمة لزيادة الإنتاجية وتوفير وقت الحفظ. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
Office Tab يقدم واجهة التبويب لـ Office، ويجعل عملك أسهل بكثير
- تمكين تحرير وقراءة المستندات عبر التبويبات في Word وExcel وPowerPoint.
- افتح وأنشئ عدة مستندات في تبويبات جديدة ضمن نفس النافذة، بدلاً من فتحها في نوافذ منفصلة.
- يزيد إنتاجيتك بنسبة50%، ويقلل مئات النقرات بالماوس يومياً!