Note: The other languages of the website are Google-translated. Back to English

كيفية إلغاء تحديد خانة اختيار أخرى عند تحديد خانة اختيار في Excel؟

كما هو موضح في الصورة المتحركة أدناه ، افترض أن هناك قائمة شراء تحتاج إلى إنهاءها بواسطتك. أثناء التحقق من القائمة ، تجد أن العناصر المحددة في بعض الفئات تجاوزت الميزانية وتحتاج إلى إعادة تحديدها. نظرًا لأن القائمة طويلة جدًا ، فأنت بحاجة الآن إلى طريقة أكثر فاعلية لإلغاء تحديد خانة الاختيار الأصلية تلقائيًا عند تحديد خانة اختيار جديدة في إحدى الفئات. يوضح هذا البرنامج التعليمي الطريقة خطوة بخطوة لمساعدتك على إنجازها.

قم بإلغاء تحديد خانة اختيار أخرى عند تحديد خانة اختيار جديدة برمز VBA


قم بإلغاء تحديد خانة اختيار أخرى عند تحديد خانة اختيار جديدة برمز VBA

كما هو موضح في العرض التوضيحي أعلاه ، تم تسمية عشرة مربعات اختيار خانة الاختيار 1, خانة الاختيار 2, خانة الاختيار 3، ... ، خانة الاختيار 10 مقسمة إلى 3 مجموعات وتقع في فئات مختلفة في الجدول.

في هذا المثال ، يوجد Checkbox1 و 2 و 3 في مجموعة واحدة و Checkbox4 و 5 و 6 و 7 في مجموعة واحدة و Checkbox8 و 9,10،XNUMX في نفس المجموعة. في كل مجموعة ، يُسمح بتحديد خانة اختيار واحدة فقط في كل مرة. عندما يتم تحديد خانة اختيار ، يتم إلغاء تحديد خانة اختيار أخرى تلقائيًا.

الآن دعنا نرى كيفية تطبيق كود فبا التالي لحل هذه المشكلة.

1. انقر بزر الماوس الأيمن فوق علامة تبويب الورقة ثم انقر فوق عرض الرمز من قائمة السياق.

2. في فتح ميكروسوفت فيسوال باسيك للتطبيقات في النافذة ، قم بلصق رمز VBA التالي في ملف ورقة (كود) نافذة.

كود فبا: قم بإلغاء تحديد خانة اختيار أخرى عند تحديد خانة اختيار جديدة

Dim xBol As Boolean
'Updated by Extendoffice 20220816
Private Sub CheckBox1_Change()
SetCheckBoxes "CheckBox1"
End Sub

Private Sub CheckBox2_Change()
SetCheckBoxes "CheckBox2"
End Sub

Private Sub CheckBox3_Change()
SetCheckBoxes "CheckBox3"
End Sub

Private Sub CheckBox4_Change()
SetCheckBoxes "CheckBox4"
End Sub

Private Sub CheckBox5_Change()
SetCheckBoxes "CheckBox5"
End Sub

Private Sub CheckBox6_Click()
SetCheckBoxes "CheckBox6"
End Sub

Private Sub CheckBox7_Click()
SetCheckBoxes "CheckBox7"
End Sub
Private Sub CheckBox8_Click()
SetCheckBoxes "CheckBox8"
End Sub
Private Sub CheckBox9_Click()
SetCheckBoxes "CheckBox9"
End Sub
Private Sub CheckBox10_Click()
SetCheckBoxes "CheckBox10"
End Sub

Private Function SetCheckBoxes(mCheckBoxName As String)
Dim x As Long
Dim xAllArr
Dim xArrItem
Dim xI, xJ
If Not xBol Then Exit Function
'In the following line, the checkboxes enclosed in double quotes belong to the same group, and each checkbox is separated by a comma. To add more checkbox groups, please enclose the checkboxes in new double quotes.
xAllArr = Array("CheckBox1,CheckBox2,CheckBox3", "CheckBox4,CheckBox5,CheckBox6,CheckBox7", "CheckBox8,CheckBox9,CheckBox10")
For xI = LBound(xAllArr) To UBound(xAllArr)
If InStr(xAllArr(xI), mCheckBoxName) > 0 Then
xBol = False
xArrItem = Split(xAllArr(xI), ",")
For xJ = LBound(xArrItem) To UBound(xArrItem)
If xArrItem(xJ) <> mCheckBoxName Then
Me.OLEObjects(xArrItem(xJ)).Object.Value = False
End If
Next
End If
Next
xBol = True
End Function

Private Sub Worksheet_Activate()
xBol = True
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
xBol = True
End Sub

ملاحظة:

1) في الكود ، Checkbox1 ، Checkbox2 ، ...، خانة الاختيار 10 هي اسم مربعات الاختيار ؛
2) في السطر التالي ، تنتمي مربعات الاختيار المرفقة بعلامات اقتباس مزدوجة إلى نفس المجموعة ، ويتم فصل كل خانة اختيار بفاصلة. لإضافة المزيد من مجموعات مربعات الاختيار ، يرجى إحاطة خانات الاختيار بعلامات اقتباس مزدوجة جديدة.
xAllArr = Array("CheckBox1,CheckBox2,CheckBox3", "CheckBox4,CheckBox5,CheckBox6,CheckBox7", "CheckBox8,CheckBox9,CheckBox10")
3) مربعات الاختيار هي عنصر تحكم ActiveX مربعات الاختيار.

3. اضغط على قديم + Q مفاتيح لإغلاق ميكروسوفت فيسوال باسيك للتطبيقات نافذة.

ثم عند تحديد مربع اختيار جديد في مجموعة ، سيتم إلغاء تحديد المربع الأصلي المحدد تلقائيًا كما هو موضح في gif أدناه.


عرض توضيحي: قم بإلغاء تحديد خانة اختيار أخرى عند تحديد خانة اختيار في Excel

  كوتولس ل إكسيل يتضمن أكثر من 300 ميزة قوية لبرنامج Microsoft Excel. حر في المحاولة دون قيود في 30 يوما. تحميل الآن!


أفضل أدوات إنتاجية المكتب

Kutools for Excel يحل معظم مشاكلك ويزيد إنتاجيتك بنسبة 80٪

  • إعادة استخدام: أدخل بسرعة الصيغ المعقدة والرسوم البيانية وأي شيء استخدمته من قبل ؛ تشفير الخلايا مع كلمة السر إنشاء قائمة بريدية وإرسال رسائل البريد الإلكتروني ...
  • سوبر فورميولا بار (بسهولة تحرير أسطر متعددة من النص والصيغة) ؛ تخطيط القراءة (قراءة وتحرير أعداد كبيرة من الخلايا بسهولة) ؛ لصق في النطاق المصفى
  • دمج الخلايا / الصفوف / الأعمدة دون فقدان البيانات ؛ تقسيم محتوى الخلايا ؛ ادمج الصفوف / الأعمدة المكررة... منع تكرار الخلايا؛ قارن النطاقات
  • حدد مكرر أو فريد صفوف حدد صفوف فارغة (جميع الخلايا فارغة) ؛ البحث الفائق والبحث الغامض في العديد من المصنفات. تحديد عشوائي ...
  • نسخة طبق الأصل خلايا متعددة بدون تغيير مرجع الصيغة ؛ إنشاء المراجع تلقائيًا إلى أوراق متعددة أدخل الرموز النقطية، مربعات الاختيار والمزيد ...
  • استخراج النص، إضافة نص ، إزالة حسب الموضع ، إزالة الفضاء؛ إنشاء وطباعة المجاميع الفرعية لترحيل الصفحات ؛ التحويل بين محتوى الخلايا والتعليقات
  • سوبر تصفية (حفظ وتطبيق مخططات التصفية على أوراق أخرى) ؛ فرز متقدم حسب الشهر / الأسبوع / اليوم ، التكرار والمزيد ؛ مرشح خاص بواسطة bold، italic ...
  • اجمع بين المصنفات وأوراق العمل؛ دمج الجداول على أساس الأعمدة الرئيسية ؛ تقسيم البيانات إلى أوراق متعددة; تحويل دفعة xls و xlsx و PDF
  • أكثر من 300 ميزة قوية. يدعم Office / Excel 2007-2021 و 365. يدعم جميع اللغات. سهولة النشر في مؤسستك أو مؤسستك. الميزات الكاملة نسخة تجريبية مجانية لمدة 30 يومًا. ضمان استرداد الأموال لمدة 60 يومًا.
علامة تبويب kte 201905

يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
أوفيسيتاب القاع
فرز التعليقات حسب
التعليقات (0)
لا يوجد تقييم. كن أول من يقيم!
لا توجد تعليقات منشورة هنا حتى الآن
اترك تعليقاتك
النشر كضيف
×
قيم المنشور:
0   الشخصيات
المواقع المقترحة

تواصل معنا

حقوق التأليف والنشر © 2009 - شبكة الاتصالات العالمية.extendoffice.com. | كل الحقوق محفوظة. مشغل بواسطة ExtendOffice. | | خريطة الموقع
Microsoft وشعار Office هما علامتان تجاريتان أو علامتان تجاريتان مسجلتان لشركة Microsoft Corporation في الولايات المتحدة و / أو دول أخرى.
محمي بواسطة Sectigo SSL