آخر تحديث: أغسطس 2021 ؛ Microsoft Excel 365 ، 2019 ، 2016.
في البرنامج التعليمي VBA for Excel Automation اليوم ، سنتعرف على كيفية تغيير لون الخلية برمجيًا بناءً على قيمة الخلية.
يمكننا استخدام هذه التقنية عند تطوير لوحة معلومات بسيطة للحالة على سبيل المثال.
يثبت
إذا لم تكن قد طورت برنامج Excel بعد ، فإننا نوصي بالاطلاع على دليلنا التمهيدي إلى Excel Macros . على وجه التحديد ، تحتاج إلى التأكد من توفر علامة التبويب Developer في شريط Microsoft Excel ، حيث ستستخدمها لكتابة بعض التعليمات البرمجية البسيطة.
- افتح برنامج Microsoft Excel. لاحظ أنه من المتوقع أن تعمل التعليمات البرمجية المتوفرة في هذا البرنامج التعليمي في Excel 2007 وما بعده.
- في ورقة عمل فارغة ، أضف الجدول التالي:

- انتقل الآن وحدد نطاقًا مسمىًا بالضغط على: الصيغ >> تحديد الاسم
![كيفية تعيين لون خلية Excel وفقًا لشرط مع VBA؟ كيفية تعيين لون خلية Excel وفقًا لشرط مع VBA؟]()
تغيير اللون الداخلي للخلية بناءً على القيمة باستخدام الخلية والداخلية واللون
- اضغط على إدخال المطور في الشريط.
- اضغط على Visual Basic أو Alt + F11 لفتح محرر VBA للمطور.
- بعد ذلك ، قم بتمييز ورقة العمل التي ترغب في تشغيل التعليمات البرمجية الخاصة بك فيها. بدلاً من ذلك ، حدد وحدة نمطية تحتوي على رمز VBA الخاص بك.
- انطلق والصق هذا الرمز. في مثالنا ، سنقوم بتعديل اللون الداخلي لنطاق من الخلايا إلى قيم RGB محددة للخلية تتوافق مع الألوان الأحمر والأصفر والأخضر.
- على وجه التحديد ، نستخدم طريقة Excel VBA Cell.Interior.Color وتمرير قيمة RGB المقابلة أو مؤشر اللون.
Sub Color_Cell_Condition()
Dim MyCell As Range
Dim StatValue As String
Dim StatusRange As Range
Set StatusRange = Range("Status")
For Each MyCell In StatusRange
StatValue = MyCell.Value
Select Case StatValue
Case "Progressing"
MyCell.Interior.Color = RGB(0, 255, 0)
Case "Pending Feedback"
MyCell.Interior.Color = RGB(255, 255, 0)
Case "Stuck"
MyCell.Interior.Color = RGB(255, 0, 0)
End Select
Next MyCell
End Sub
- قم بتشغيل التعليمات البرمجية - إما بالضغط على F5 أو تشغيل >> Run Sub / UserForm.
- ستلاحظ أن لوحة معلومات الحالة قد تم ملؤها كما هو موضح أدناه:
![كيفية تعيين لون خلية Excel وفقًا لشرط مع VBA؟ كيفية تعيين لون خلية Excel وفقًا لشرط مع VBA؟]()
- احفظ الكود وأغلق محرر VBA.