في هذه المقالة، سننظر في مثال لماكرو يمكنه البحث عن البيانات في العديد من المصنفات وتسجيل المعلومات المحددة في ملف تقرير منفصل.
للقيام بذلك، افتح كتابك، انتقل إلى
Sub Report_file()
'moonexcel.com.ua
Application.ScreenUpdating = False ' تعطيل تحديث الشاشة
Set report = Workbooks("Report.xlsb").Worksheets(1)
find_field = report.[a1]
' افتح مربع الحوار لتحديد الملفات للاستيراد
FilesToOpen = Application.GetOpenFilename _
(FileFilter:="All files (*.*), *.*", _
MultiSelect:=True, Title:=" اختر الملفات! ")
If TypeName(FilesToOpen) = "Boolean" Then
MsgBox " لم يتم اختيار اي ملف! "
Exit Sub
End If
' نراجع جميع الملفات المحددة واحدًا تلو الآخر
m = 1
While m <= UBound(FilesToOpen)
Set importWB = Workbooks.Open(Filename:=FilesToOpen(m))
Set importWS = importWB.Worksheets(1)
' لقد تغلبنا على الخلايا" القبعات "
For Each cell2 In report.Range(report.Cells(1, 2), report.Cells(1, report.UsedRange.Columns.Count))
On Error Resume Next: Err.Clear
' أبحث عن المعنى في كتاب مفتوح
tr = importWS.UsedRange.Find(find_field).Row
tc = importWS.UsedRange.Find(find_field).Column
x = importWS.Range(importWS.Cells(tr, tc), importWS.Cells(20000, tc)).Find(report.Cells(m + 1, 1).Value).Row
y = importWS.UsedRange.Find(cell2.Value).Column
' نقل القيم التي تم العثور عليها إلى ملف التقرير
report.Cells(m + 1, cell2.Column).Value = importWS.Cells(x, y).Value
Next
importWB.Close savechanges:=False
m = m + 1
Wend
Application.ScreenUpdating = True
End Sub
بعد ذلك، يمكنك العودة إلى Excel وتشغيل الماكرو الخاص بنا من خلال القائمة