KutoolsforOffice — حل واحد، خمس أدوات قوية.تحقيق المزيد بجهد أقل.

كيف يمكن التكرار عبر المصنفات الموجودة في مجلد ونسخ بياناتها إلى ورقة رئيسية في Excel؟

المؤلفSiluviaتاريخ التعديل

افترض أن لديك عدة ملفات Excel في مجلدٍ واحد، وتحتاج إلى التكرار عبر كل هذه الملفات لنسخ البيانات من نطاق معيّن في ورقة عمل ثابتة (مثل Sheet1) إلى ورقة العمل الرئيسية. يقدّم لك هذا الدليل حلاً تفصيلياً باستخدام VBA لتبسيط هذه العملية في Excel.

التكرار عبر المصنفات في مجلد ونسخ البيانات إلى ورقة رئيسية باستخدام كود VBA


التكرار عبر الملفات في مجلد ونسخ البيانات إلى ورقة رئيسية باستخدام كود VBA

إذا كنت ترغب في نسخ البيانات من النطاق A1:D4 في جميع أوراق العمل Sheet1 الخاصة بالمصنفات الموجودة في مجلد معيّن، ثم لصقها في ورقة رئيسية، فاتبع الخطوات التالية.

1. في المصنف الذي ستنشئ فيه ورقة العمل الرئيسية، اضغط على مفاتيحAlt+F11 لفتح نافذةMicrosoft Visual Basic for Applications.

2. في نافذةMicrosoft Visual Basic for Applications، انقر علىInsert > Module، ثم انسخ كود VBA أدناه إلى نافذة الكود.

كود VBA: التكرار عبر الملفات في مجلد ونسخ البيانات إلى ورقة رئيسية

Sub Merge2MultiSheets()
    Dim xRg As Range
    Dim xSelItem As Variant
    Dim xFileDlg As FileDialog
    Dim xFileName, xSheetName, xRgStr As String
    Dim xBook, xWorkBook As Workbook
    Dim xSheet As Worksheet
    On Error Resume Next
    Application.DisplayAlerts = False
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    xSheetName = "Sheet1"
    xRgStr = "A1:D4"
    Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
    With xFileDlg
        If .Show = -1 Then
            xSelItem = .SelectedItems.Item(1)
            Set xWorkBook = ThisWorkbook
            Set xSheet = xWorkBook.Sheets("New Sheet")
            If xSheet Is Nothing Then
                xWorkBook.Sheets.Add(after:=xWorkBook.Worksheets(xWorkBook.Worksheets.Count)).Name = "New Sheet"
                Set xSheet = xWorkBook.Sheets("New Sheet")
            End If
            xFileName = Dir(xSelItem & "\*.xlsx", vbNormal)
            If xFileName = "" Then Exit Sub
            Do Until xFileName = ""
               Set xBook = Workbooks.Open(xSelItem & "\" & xFileName)
                Set xRg = xBook.Worksheets(xSheetName).Range(xRgStr)
                xRg.Copy xSheet.Range("A65536").End(xlUp).Offset(1, 0)
                xFileName = Dir()
                xBook.Close
            Loop
        End If
    End With
    Application.DisplayAlerts = True
    Application.EnableEvents = True
    Application.ScreenUpdating = True
End Sub

ملاحظة:

1). في الكود، تعني عبارة "A1:D4« و»Sheet1« أن البيانات في النطاق A1:D4 من جميع أوراق Sheet1 سيتم نسخها إلى الورقة الرئيسية. و»New Sheet" هو اسم الورقة الرئيسية الجديدة التي تم إنشاؤها.
2). يجب ألا تكون ملفات Excel الموجودة في المجلد المحدد مفتوحة.

3. اضغط على مفتاحF5 لتشغيل الكود.

4. في نافذةBrowse التي تظهر، يرجى تحديد المجلد الذي يحتوي على الملفات التي ستكررها، ثم انقر على زرOK. انظر لقطة الشاشة:

لقطة شاشة لمربع حوار الاستعراض في Excel لتحديد مجلد يحتوي على ملفات للمرور عليها بشكل متكرر

يتم بعد ذلك إنشاء ورقة عمل رئيسية باسم «New Sheet» في نهاية المصنف الحالي، وتُدرج فيها البيانات الموجودة في النطاق A1:D4 من جميع أوراق Sheet1 الموجودة في المجلد المحدد.


مقالات ذات صلة:

أفضل أدوات الإنتاجية لمكتبتك

🤖KUTOOLS AI مساعد: ثوّر تحليل البيانات استنادًا إلى:التنفيذ الذكي   |  إنشاء الكود|  إنشاء الصيغ المخصصة  |  تحليل البيانات وإنشاء المخططات البيانية|  استدعاء الوظائف المحسنة
الميزات الشائعة:البحث، التمييز أو وضع علامة على المكررات   |  حذف الصفوف الفارغة   |  دمج الأعمدة أو الخلايا دون فقدان البيانات   |  التقريب بدون استخدام الصيغة...
بحث متقدم:VLookup متعدد المعايير  |  VLookup متعدد القيم  |   VLookup عبر أوراق متعددة   |   مطابقة غامضة....
قائمة منسدلة متقدمة:إنشاء قائمة منسدلة بسرعة   |  قائمة منسدلة تابعة   |  قائمة منسدلة متعددة الاختيار....
مدير الأعمدة:إضافة عدد محدد من الأعمدة|نقل الأعمدة|تبديل حالة ظهور الأعمدة المخفية|مقارنة النطاقات والأعمدة...
ميزات مميزة:التركيز على الشبكة   |  عرض التصميم   |شريط الصيغ المحسن   | مدير الدفتر والورقة   |  مكتبة الموارد(نص تلقائي)|  أداة اختيار التاريخ   |  تجميع ورقات العمل  |  تشفير/فك تشفير الخلايا   | إرسال رسائل البريد الإلكتروني حسب القائمة   |  مرشح متقدم   |   تصفية خاصة(تصفية الخلايا التي تحتوي على خط عريض/مائل/يتوسطه خط...) ...
أفضل 15 مجموعات الأدوات:12 أدواتالنصوص(إضافة نص،حذف الأحرف المحددة، ...)|   50+أنواعالمخططات البيانية(مخطط جانت، ...)|   40+ صيغعملية(حساب العمر بناءً على تاريخ الميلاد، ...)|   19 أدواتالإدراج(إدراج رمز QR،إدراج صورة من المسار، ...)|   12 أدواتالتحويل(تحويل إلى كلمات،تحويل العملة، ...)|   7 أدواتدمج وتقسيم(دمج متقدم للصفوف،تقسيم الخلايا، ...)|... وأكثر من ذلك
استخدم Kutools باللغة التي تفضلها – يدعم الإنجليزية والإسبانية والألمانية والفرنسية والصينية و40+ لغات أخرى!

عزِّز مهاراتك في Excel باستخدام Kutools لـ Excel، وعايش الكفاءة كما لم تفعل من قبل.يقدّم Kutools لـ Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية ووقت الحفظ.انقر هنا للحصول على الميزة التي تحتاجها أكثر من غيرها...


يجلب Office Tab واجهة ذات علامات تبويب إلى Office، ويجعل عملك أسهل بكثير

  • تمكّن من التحرير والقراءة باستخدام علامات التبويب في Word وExcel وPowerPoint، وPublisher وAccess وVisio وProject.
  • افتح وأنشئ مستندات متعددة في علامات تبويب جديدة داخل النافذة نفسها، بدلاً من فتح نوافذ جديدة.
  • يزيد إنتاجيتك بنسبة 50% ويوفّر لك مئات نقرات الفأرة كل يوم!

جميع الإضافات من Kutools في برنامج تثبيت واحد!

Kutools for Office حزمةٌ تحتوي على إضافاتٍ مخصصة لتطبيقات Excel وWord وOutlook وPowerPoint، إلى جانب Office Tab Pro، مما يجعلها الخيار المثالي للفِرق التي تعمل عبر تطبيقات Office.

ExcelWordOutlookTabsPowerPoint
  • حزمة شاملة واحدة— إضافات Excel وWord وOutlook وPowerPoint بالإضافة إلى Office Tab Pro
  • برنامج تثبيت واحد، ترخيص واحد— الإعداد خلال دقائق (جاهز لـ MSI)
  • يعمل بشكل أفضل معًا— إنتاجية ميسَّرة عبر تطبيقات Office
  • تجربة مجانية لمدة 30 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
  • أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل