كيفية سرد جميع الملفات في المجلد والمجلدات الفرعية ضمن ورقة عمل؟
هل حاولت من قبل سرد جميع أسماء الملفات من مجلد إلى ورقة عمل بما في ذلك الملفات الموجودة داخل المجلدات الفرعية الخاصة به؟ في الواقع، لا توجد طريقة مباشرة لسرد أسماء الملفات من المجلد والمجلد الفرعي في Excel، ومع ذلك، اليوم، سأقدم بعض الحيل السريعة لحل هذه المهمة.
سرد جميع أسماء الملفات في المجلد والمجلد الفرعي باستخدام كود VBA
سرد جميع أسماء الملفات في المجلد والمجلد الفرعي بسرعة وسهولة مع Kutools لـ Excel
سرد جميع أسماء الملفات في المجلد والمجلد الفرعي باستخدام كود VBA
عادةً، لا يحتوي Excel على ميزة مدمجة للتعامل مع هذه المهمة، ولكن يمكنك تطبيق الكود التالي من VBA لإكمال هذه المشكلة.
1. قم بتفعيل ورقة عمل جديدة والتي سيتم فيها سرد أسماء الملفات.
2. اضغط باستمرار على مفتاحي ALT + F11 في Excel، وسيتم فتح نافذة Microsoft Visual Basic for Applications.
3. انقر فوق إدراج > وحدة، والصق الكود التالي في نافذة الوحدة.
كود VBA: سرد جميع أسماء الملفات في المجلد والمجلد الفرعي
Sub MainList()
'Updateby Extendoffice
Set folder = Application.FileDialog(msoFileDialogFolderPicker)
If folder.Show <> -1 Then Exit Sub
xDir = folder.SelectedItems(1)
Call ListFilesInFolder(xDir, True)
End Sub
Sub ListFilesInFolder(ByVal xFolderName As String, ByVal xIsSubfolders As Boolean)
Dim xFileSystemObject As Object
Dim xFolder As Object
Dim xSubFolder As Object
Dim xFile As Object
Dim rowIndex As Long
Set xFileSystemObject = CreateObject("Scripting.FileSystemObject")
Set xFolder = xFileSystemObject.GetFolder(xFolderName)
rowIndex = Application.ActiveSheet.Range("A65536").End(xlUp).Row + 1
For Each xFile In xFolder.Files
Application.ActiveSheet.Cells(rowIndex, 1).Formula = xFile.Name
rowIndex = rowIndex + 1
Next xFile
If xIsSubfolders Then
For Each xSubFolder In xFolder.SubFolders
ListFilesInFolder xSubFolder.Path, True
Next xSubFolder
End If
Set xFile = Nothing
Set xFolder = Nothing
Set xFileSystemObject = Nothing
End Sub
Function GetFileOwner(ByVal xPath As String, ByVal xName As String)
Dim xFolder As Object
Dim xFolderItem As Object
Dim xShell As Object
xName = StrConv(xName, vbUnicode)
xPath = StrConv(xPath, vbUnicode)
Set xShell = CreateObject("Shell.Application")
Set xFolder = xShell.Namespace(StrConv(xPath, vbFromUnicode))
If Not xFolder Is Nothing Then
Set xFolderItem = xFolder.ParseName(StrConv(xName, vbFromUnicode))
End If
If Not xFolderItem Is Nothing Then
GetFileOwner = xFolder.GetDetailsOf(xFolderItem, 8)
Else
GetFileOwner = ""
End If
Set xShell = Nothing
Set xFolder = Nothing
Set xFolderItem = Nothing
End Function
4. بعد لصق الكود في الوحدة، اضغط على مفتاح F5 لتشغيل هذا الكود، وستظهر نافذة حوار الماكرو، حدد اسم الماكرو MainList، ثم انقر فوق زر التشغيل، انظر إلى الصورة التوضيحية:
5. وفي نافذة الاستعراض، يرجى تحديد المجلد الذي تريد سرد جميع أسماء الملفات فيه بما في ذلك المجلدات الفرعية، انظر إلى الصورة التوضيحية:
6. بعد تحديد المجلد، انقر فوق زر موافق، وستكون جميع أسماء الملفات في المجلد ومجلداته الفرعية قد تم سردها في ورقة العمل الحالية بدءًا من الخلية A2، انظر إلى الصور التوضيحية:
![]() |
![]() |
![]() |
سرد جميع أسماء الملفات في المجلد والمجلد الفرعي بسرعة وسهولة مع Kutools لـ Excel
مع الكود أعلاه، يمكنك فقط سرد أسماء الملفات، وأحيانًا تحتاج إلى سرد خصائص أخرى مثل حجم الملف، نوع الملف، وقت الإنشاء، المجلد الذي يحتوي على الملف وما إلى ذلك. Kutools لـ Excel يحتوي على وظيفة مفيدة – قائمة أسماء الملفات، وباستخدام هذه الميزة، يمكنك بسرعة سرد جميع أو أنواع معينة من أسماء الملفات في المجلد ومجلداته الفرعية.
بعد تنزيل وتثبيت Kutools لـ Excel، يرجى القيام بالخطوات التالية:
1. انقر فوق المؤسسة > استيراد وتصدير > قائمة أسماء الملفات، انظر إلى الصورة التوضيحية:
2. في مربع الحوار قائمة أسماء الملفات، قم بالعمليات التالية:
أ: انقر زر اختيار المجلد الذي تريد سرد أسماء الملفات فيه؛
ب: حدد نوع الملف الذي تريد سرده من قسم نوع الملف؛
ج: حدد وحدة حجم الملف التي تريد عرضها من قسم وحدة حجم الملف.
ملاحظة: لسرد أسماء الملفات من المجلد الفرعي، يرجى تحديد تضمين الملفات في الأدلة الفرعية، ويمكنك أيضًا تحديد تضمين الملفات والمجلدات المخفية حسب الحاجة. إذا حددت الخيار إنشاء ارتباطات تشعبية، فسيتم إنشاء ارتباطات تشعبية لكل أسماء الملفات والمجلدات.
3. ثم انقر فوق زر موافق، سيتم عرض جميع الملفات الموجودة في المجلد المحدد ومجلداته الفرعية مع الخصائص التالية في ورقة عمل جديدة. انظر إلى الصورة التوضيحية:
انقر لمعرفة المزيد من التفاصيل حول أداة قائمة أسماء الملفات.
قم بتنزيل وتجربة Kutools لـ Excel الآن مجانًا!
أفضل أدوات زيادة الإنتاجية لمجموعة Office
عزز مهاراتك في Excel مع Kutools لـ Excel، وتمتع بكفاءة غير مسبوقة. يقدم Kutools لـ Excel أكثر من300 ميزة متقدمة لتعزيز الإنتاجية وتوفير وقت الحفظ. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
Office Tab يجلب تجربة التبويبات إلى Office، ويجعل عملك أسهل بكثير
- فعّل تحرير وقراءة المستندات عبر التبويبات في Word وExcel وPowerPoint
- افتح وأنشئ مستندات متعددة في تبويبات جديدة ضمن نفس النافذة، بدلاً من فتحها في نوافذ جديدة.
- يمنحك زيادة إنتاجية تصل إلى50% ويوفر عليك مئات النقرات يومياً!