كيفية البحث باستخدام VLOOKUP وإرجاع لون الخلفية مع قيمة البحث في Excel؟
لنفترض أن لديك جدولًا كما هو موضح في لقطة الشاشة أدناه. الآن تريد التحقق مما إذا كانت هناك قيمة محددة في العمود A ثم إرجاع القيمة المقابلة مع لون خلفيتها في العمود C. كيف يمكنك تحقيق ذلك؟ الطريقة الموجودة في هذه المقالة يمكن أن تساعدك في حل المشكلة.
البحث باستخدام VLOOKUP وإرجاع لون الخلفية مع قيمة البحث بواسطة وظيفة معرفة من قبل المستخدم
البحث باستخدام VLOOKUP وإرجاع لون الخلفية مع قيمة البحث بواسطة وظيفة معرفة من قبل المستخدم
يرجى اتباع الخطوات التالية للبحث عن قيمة وإرجاع قيمتها المقابلة مع لون الخلفية في Excel.
1. في ورقة العمل التي تحتوي على القيمة التي تريد البحث عنها باستخدام VLOOKUP، انقر بزر الماوس الأيمن على تبويب الورقة وحدد عرض الكود من قائمة السياق. انظر لقطة الشاشة:
2. في نافذة Microsoft Visual Basic for Applications التي ستفتح، يرجى نسخ كود VBA أدناه إلى نافذة الكود.
كود VBA 1: البحث باستخدام VLOOKUP وإرجاع لون الخلفية مع قيمة البحث
Sub Worksheet_Change(ByVal Target As Range)
Dim I As Long
Dim xKeys As Long
Dim xDicStr As String
On Error Resume Next
Application.ScreenUpdating = False
xKeys = UBound(xDic.Keys)
If xKeys >= 0 Then
For I = 0 To UBound(xDic.Keys)
xDicStr = xDic.Items(I)
If xDicStr <> "" Then
Range(xDic.Keys(I)).Interior.Color = _
Range(xDic.Items(I)).Interior.Color
Else
Range(xDic.Keys(I)).Interior.Color = xlNone
End If
Next
Set xDic = Nothing
End If
Application.ScreenUpdating = True
End Sub
3. بعد ذلك، انقر فوق إدراج > وحدة، وانسخ كود VBA 2 أدناه إلى نافذة الوحدة.
كود VBA 2: البحث باستخدام VLOOKUP وإرجاع لون الخلفية مع قيمة البحث
Public xDic As New Dictionary
Function LookupKeepColor (ByRef FndValue, ByRef LookupRng As Range, ByRef xCol As Long)
Dim xFindCell As Range
On Error Resume Next
Set xFindCell = LookupRng.Find(FndValue, , xlValues, xlWhole)
If xFindCell Is Nothing Then
LookupKeepColor = ""
xDic.Add Application.Caller.Address, ""
Else
LookupKeepColor = xFindCell.Offset(0, xCol - 1).Value
xDic.Add Application.Caller.Address, xFindCell.Offset(0, xCol - 1).Address
End If
End Function
4. بعد إدراج الرمزين، انقر فوق أدوات > مراجع. ثم قم بتحديد مربع تشغيل برنامج Microsoft Script في مربع الحوار مراجع – مشروع VBA. انظر لقطة الشاشة:
5. اضغط على مفتاحي Alt + Q للخروج من نافذة Microsoft Visual Basic for Applications والعودة إلى ورقة العمل.
6. حدد خلية فارغة بجانب قيمة البحث، ثم أدخل الصيغة =LookupKeepColor(E2,$A$1:$C$8,3) في شريط الصيغة، ثم اضغط على مفتاح الإدخال Enter.
ملاحظة: في الصيغة، E2 تحتوي على القيمة التي ستبحث عنها، $A$1:$C$8 هي نطاق الجدول، والرقم 3 يعني أن القيمة المقابلة التي ستعيد إرجاعها تقع في العمود الثالث من الجدول. يرجى تغييرها حسب الحاجة.
7. استمر في تحديد أول خلية نتيجة، واسحب مقبض التعبئة لأسفل للحصول على جميع النتائج مع لون خلفيتهم. انظر لقطة الشاشة.
مقالات ذات صلة:
- كيفية نسخ تنسيق المصدر لخلية البحث عند استخدام VLOOKUP في Excel؟
- كيفية البحث باستخدام VLOOKUP وإرجاع تنسيق التاريخ بدلاً من الرقم في Excel؟
- كيفية استخدام VLOOKUP والمجموع في Excel؟
- كيفية إعادة قيمة البحث باستخدام VLOOKUP في الخلية المجاورة أو التالية في Excel؟
- كيفية البحث باستخدام VLOOKUP وإرجاع صحيح أو خطأ / نعم أو لا في Excel؟
أفضل أدوات الإنتاجية لمكتب العمل
عزز مهاراتك في Excel مع Kutools لـ Excel، واختبر الكفاءة كما لم يحدث من قبل. Kutools لـ Excel يقدم أكثر من300 ميزة متقدمة لزيادة الإنتاجية وتوفير وقت الحفظ. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
Office Tab يقدم واجهة التبويب لـ Office، ويجعل عملك أسهل بكثير
- تمكين تحرير وقراءة المستندات عبر التبويبات في Word وExcel وPowerPoint.
- افتح وأنشئ عدة مستندات في تبويبات جديدة ضمن نفس النافذة، بدلاً من فتحها في نوافذ منفصلة.
- يزيد إنتاجيتك بنسبة50%، ويقلل مئات النقرات بالماوس يومياً!