Excel - دمج عدة أوراق عمل في واحدة

القضية

أستخدم Excel لتخزين معلومات حول العديد من المنتجات ولدي ورقة عمل مختلفة لكل نطاق. كيفية دمج (الجمع بشكل متسلسل) كل أوراق العمل هذه في صفحة واحدة؟ جميع أوراق العمل لها نفس عدد الأعمدة ، بنفس العنوان (في الصف العلوي).

كيفية المضي قدما؟

حل

افترض أن:

1. يمكن إنشاء ورقة بعنوان Consolidated وحذفها بواسطة الماكرو

2. الرؤوس في الصف الأول على جميع الأوراق وهي شائعة للجميع

3. يتم نسخ جميع الأوراق

 Sub CombineSheets () باهتة lConRow باسم ورقة Dim طويلة مثل Dim Dim sConsolidatedSheet باسم String Dim lSheetRow As Long Dim sLastCol باسم String sConsolidatedSheet = "Consolidated" On Error Resume Next Sheets (sConsolidatedSheet). Deleted On Error GoTo 0 Sheets. sConsolidatedSheet لكل ورقة في أوراق If Sheet.Name = sConsolidatedSheet ثم انتقل إلى Next_Sheet If sLastCol = "" ثم sLastCol = Sheet.Cells (1 ، Columns.Count). End (xlToLeft) .Address Sheets (sConsolidatedSheet) .Range ("1: 1 ") = Sheet.Range (" 1: 1 "). القيمة lConRow = 1 End If lSheetRow = 0 عند حدوث خطأ في السيرة الذاتية التالي lSheetRow = Sheet.Cells.Find (" * "، الخلايا (1 ، 1) ، SearchOrder: = xlByRows ، SearchDirection: = xl Previous) .Row On Error GoTo 0 If (lSheetRow> 1) ثم أوراق (sConsolidatedSheet) .Range (lConRow + 1 & ":" & lSheetRow + lConRow - 1) = Sheet.Range ("2:" & lSheetRow) .Value lConRow = أوراق (sConsolidatedSheet) .Cells.Find ("*" ، خلايا (1 ، 1) ، SearchOrder: = xlByRows ، SearchDirection: = xl Previous) .Row End If Next_Sheet: Next End Sub 

بفضل rizvisa1 لهذه النصيحة.

المقال السابق المقالة القادمة

نصائح الأعلى