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