كيف تبحث / تجد القيم في مصنف آخر؟
تتناول هذه المقالة كيفية البحث عن القيم وإرجاع البيانات من مصنف آخر ، وكيفية البحث عن / البحث عن القيم من مصنف آخر. هنا سأقدم ثلاثة حلول بالتفصيل.
- بيانات Vlookup وإرجاع القيم من مصنف آخر في Excel
- بيانات Vlookup وإرجاع القيم من مصنف مغلق آخر باستخدام VBA
بيانات Vlookup وإرجاع القيم من مصنف آخر في Excel
على سبيل المثال ، تقوم بإنشاء جدول شراء الفاكهة في Excel ، والآن تحتاج إلى البحث عن الثمار من مصنف آخر وإرجاع الأسعار المقابلة كما هو موضح أدناه. هنا سوف أرشدك إلى حلها باستخدام وظيفة VLOOKKUP في Excel.


1. افتح كلا المصنفين اللذين ستبحث عن القيم منهما وإرجاع القيم فيهما.
2. حدد خلية فارغة سترجع السعر ، اكتب الصيغة = VLOOKUP (B2، [Price.xlsx] Sheet1! $ A $ 1: $ B $ 24,2،XNUMX، FALSE) بداخله ، ثم اسحب مقبض التعبئة لتطبيق هذه الصيغة على النطاق الذي تريده.
ملاحظة:
(1) في الصيغة أعلاه ، B2 هي الفاكهة التي ستبحث عنها من مصنف آخر ، يشير Price.xlsx إلى اسم ملف المصنف الذي ستبحث عنه ، وتعني الورقة 1 اسم الورقة التي ستبحث عنها ، و A $ 1 : $ B $ 24 هو النطاق الذي ستبحث عنه. يمكنك تغييرها كما تريد.
(2) بعد إغلاق المصنف الذي بحثت عنه ، سيتم تحديث الصيغة تلقائيًا إليه = VLOOKUP (B2، 'W: \ test \ [Price.xlsx] Sheet1'! $ A $ 1: $ B $ 24,2،XNUMX، FALSE)، W: \ test \ هو مسار حفظ المصنف الذي بحثت عنه.
حتى الآن ، عادت جميع الأسعار بشكل صحيح كما هو موضح في لقطة الشاشة اليسرى. وسيتم تحديث هذه الأسعار تلقائيًا إذا بحثت عن المصنف الأصلي من التغييرات.
![]() |
الصيغة معقدة للغاية بحيث لا يمكن تذكرها؟ احفظ الصيغة كمدخل نص تلقائي لإعادة استخدامه بنقرة واحدة فقط في المستقبل! اقرأ أكثر… التجربة المجانية |
بيانات Vlookup وإرجاع القيم من مصنف مغلق آخر باستخدام VBA
قد يكون من الخطأ تكوين مسار الحفظ واسم الملف وورقة العمل في وظيفة VLOOKUP. ستقدم هذه الطريقة VBA لحلها بسهولة.
1. اضغط على قديم + F11 مفاتيح لفتح نافذة ميكروسوفت فيسوال باسيك للتطبيقات.
2. انقر فوق إدراج > وحدة، ثم قم بلصق رمز VBA أدناه في نافذة الوحدة النمطية الافتتاحية.
فبا: بيانات Vlookup وقيم الإرجاع من مصنف مغلق آخر
Private Function GetColumn(Num As Integer) As String
If Num <= 26 Then
GetColumn = Chr(Num + 64)
Else
GetColumn = Chr((Num - 1) \ 26 + 64) & Chr((Num - 1) Mod 26 + 65)
End If
End Function
Sub FindValue()
Dim xAddress As String
Dim xString As String
Dim xFileName As Variant
Dim xUserRange As Range
Dim xRg As Range
Dim xFCell As Range
Dim xSourceSh As Worksheet
Dim xSourceWb As Workbook
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xUserRange = Application.InputBox("Lookup values :", "Kutools for Excel", xAddress, Type:=8)
If Err <> 0 Then Exit Sub
Set xUserRange = Application.Intersect(xUserRange, Application.ActiveSheet.UsedRange)
xFileName = Application.GetOpenFilename("Excel Files (*.xlsx), *.xlsx", 1, "Select a Workbook")
If xFileName = False Then Exit Sub
Application.ScreenUpdating = False
Set xSourceWb = Workbooks.Open(xFileName)
Set xSourceSh = xSourceWb.Worksheets.Item(1)
xString = "='" & xSourceWb.Path & Application.PathSeparator & _
"[" & xSourceWb.Name & "]" & xSourceSh.Name & "'!$"
For Each xRg In xUserRange
Set xFCell = xSourceSh.Cells.Find(xRg.Value, , xlValues, xlWhole, , , False)
If Not (xFCell Is Nothing) Then
xRg.Offset(0, 2).Formula = xString & GetColumn(xFCell.Column + 1) & "$" & xFCell.Row
End If
Next
xSourceWb.Close False
Application.ScreenUpdating = True
End Sub
ملاحظة: سيعود VBA القيم في عمود يتكون من عمودين خلف العمود المحدد. على سبيل المثال ، أختار العمود B عند تطبيق VBA ، ستعود القيم في العمود D. إذا كنت بحاجة إلى تغيير عمود الوجهة ، فيرجى معرفة الرمز xRg.Offset (0، 2) .Formula = xString & GetColumn (xFCell.Column + 1) & "$" & xFCell.Row ، واستبدالها 2 إلى رقم آخر كما تحتاج.
3. اضغط على F5 مفتاح أو انقر فوق يجري زر لتشغيل هذا VBA.
4. في مربع حوار الفتح ، يرجى تحديد نطاق البيانات الذي ستبحث عنه ، وانقر فوق OK .
5. الآن يرجى تحديد المصنف حيث ستبحث عن القيم في مربع حوار الفتح حدد مصنفًا ، وانقر فوق ساعات العمل .
الآن يتم البحث عن جميع القيم المحددة في المصنف المغلق المحدد ، ويتم إرجاع القيم المقابلة في العمود المحدد. انظر لقطة الشاشة:
أفضل أدوات إنتاجية المكتب
ارفع مهاراتك في برنامج Excel باستخدام Kutools for Excelوتجربة كفاءة لم يسبق لها مثيل. Kutools for Excel يقدم أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية وتوفير الوقت. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
Office Tab يجلب الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير
- تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
- فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
- يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
