كيف يمكن تقسيم جدول كبير إلى عدة جداول صغيرة في Excel؟
إذا كان جدول Excel الخاص بك كبيرًا ويحتوي على أعمدة متعددة ومئات أو حتى آلاف الصفوف، فقد ترغب في تقسيمه إلى جداول أصغر وأكثر سهولة في الإدارة. على سبيل المثال، قد تحتاج إلى فصل البيانات بناءً على قيم عمود معين أو تقسيمها إلى أجزاء تحتوي كل منها على عدد ثابت من الصفوف. وتقدّم لك هذه الدورة التدريبية طرقًا خطوة بخطوة لإنجاز هذه المهمة بكفاءة عالية.
| الجدول الرئيسي | تقسيم الجدول إلى جداول متعددة حسب قيمة العمود | تقسيم الجدول إلى جداول متعددة حسب عدد الصفوف | |
![]() | ![]() | ![]() | ![]() |
تقسيم جدول كبير إلى جداول متعددة استنادًا إلى قيمة العمود باستخدام رمز VBA
تقسيم جدول كبير إلى جداول متعددة استنادًا إلى عدد محدد من الصفوف باستخدام رمز VBA
تقسيم جدول كبير إلى جداول متعددة استنادًا إلى قيمة العمود أو عدد الصفوف باستخدام Kutools لـ Excel
تقسيم جدول كبير إلى جداول متعددة استنادًا إلى قيمة العمود باستخدام رمز VBA
لتقسيم هذا الجدول الكبير إلى جداول متعددة بناءً على قيمة عمود التحديد، يمكن لرمز VBA التالي أن يساعدك. يُرجى اتباع الخطوات التالية:
1. اضغط مع الاستمرار على مفتاحَي «ALT» + "F11" لفتح نافذة «Microsoft Visual Basic for Applications».
2. انقر فوق «Insert» > «Module»، ثم الصق الرمز التالي في نافذة «Module».
رمز VBA: تقسيم جدول كبير إلى جداول متعددة حسب العمود الرئيسي:
Sub Splitdatabycol()
'by Extendoffice
Dim lr As Long
Dim ws As Worksheet
Dim vcol, i As Integer
Dim icol As Long
Dim myarr As Variant
Dim title As String
Dim titlerow As Integer
Dim xTRg As Range
Dim xVRg As Range
Dim xWSTRg As Worksheet
On Error Resume Next
Set xTRg = Application.InputBox("Please select the header rows:", "Kutools for Excel", "", Type:=8)
If TypeName(xTRg) = "Nothing" Then Exit Sub
Set xVRg = Application.InputBox("Please select the column you want to split data based on:", "Kutools for Excel", "", Type:=8)
If TypeName(xVRg) = "Nothing" Then Exit Sub
vcol = xVRg.Column
Set ws = xTRg.Worksheet
lr = ws.Cells(ws.Rows.Count, vcol).End(xlUp).Row
title = xTRg.AddressLocal
titlerow = xTRg.Cells(1).Row
icol = ws.Columns.Count
ws.Cells(1, icol) = "Unique"
Application.DisplayAlerts = False
If Not Evaluate("=ISREF('xTRgWs_Sheet!A1')") Then
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "xTRgWs_Sheet"
Else
Sheets("xTRgWs_Sheet").Delete
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "xTRgWs_Sheet"
End If
Set xWSTRg = Sheets("xTRgWs_Sheet")
xTRg.Copy
xWSTRg.Paste Destination:=xWSTRg.Range("A1")
ws.Activate
For i = (titlerow + xTRg.Rows.Count) To lr
On Error Resume Next
If ws.Cells(i, vcol) <> "" And Application.WorksheetFunction.Match(ws.Cells(i, vcol), ws.Columns(icol), 0) = 0 Then
ws.Cells(ws.Rows.Count, icol).End(xlUp).Offset(1) = ws.Cells(i, vcol)
End If
Next
myarr = Application.WorksheetFunction.Transpose(ws.Columns(icol).SpecialCells(xlCellTypeConstants))
ws.Columns(icol).Clear
For i = 2 To UBound(myarr)
ws.Range(title).AutoFilter field:=vcol, Criteria1:=myarr(i) & ""
If Not Evaluate("=ISREF('" & myarr(i) & "'!A1)") Then
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = myarr(i) & ""
Else
Sheets(myarr(i) & "").Move after:=Worksheets(Worksheets.Count)
End If
xWSTRg.Range(title).Copy
Sheets(myarr(i) & "").Paste Destination:=Sheets(myarr(i) & "").Range("A1")
ws.Range("A" & (titlerow + xTRg.Rows.Count) & ":A" & lr).EntireRow.Copy Sheets(myarr(i) & "").Range("A" & (titlerow + xTRg.Rows.Count))
Sheets(myarr(i) & "").Columns.AutoFit
Next
xWSTRg.Delete
ws.AutoFilterMode = False
ws.Activate
Application.DisplayAlerts = True
End Sub
3. بعد لصق الرمز، اضغط على مفتاح "F5" لتشغيله، وستظهر نافذة منبثقة—يرجى تحديد صف الرأس من بياناتك (انظر لقطة الشاشة):

4. بعد ذلك، انقر فوق «موافق»، وستظهر نافذة حوار جديدة؛ يُرجى تحديد بيانات العمود التي تريد التقسيم بناءً عليها، كما هو موضح في لقطة الشاشة:

5. انقر فوق «موافق». الآن، تم تقسيم الجدول الكبير إلى أوراق عمل متعددة استنادًا إلى قيم الأعمدة، حيث تظهر ورقة عمل جديدة مباشرةً بعد الورقة الرئيسية، ويتم تسميتها تلقائيًا بقيمة العمود المقابلة. راجع لقطة الشاشة:

تقسيم جدول كبير إلى جداول متعددة استنادًا إلى عدد محدد من الصفوف باستخدام رمز VBA
إذا كنت بحاجة إلى تقسيم الجدول إلى جداول متعددة بناءً على عدد الصفوف، فإن كود VBA التالي سيساعدك.
1. اضغط مع الاستمرار على مفتاحَي «ALT» + "F11" لفتح نافذة «Microsoft Visual Basic for Applications».
2. انقر فوق «Insert» > «Module»، ثم الصق الرمز التالي في نافذة «Module».
رمز VBA: تقسيم جدول كبير إلى جداول متعددة حسب عدد الصفوف:
Sub Splitdatabyrows()
'Updated by Extendoffice
Dim WorkRng As Range
Dim xRow As Range
Dim SplitRow As Integer
Dim xWs As Worksheet
Dim xTRg As Range
Dim xNTRg As Range
Dim xIER
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set xTRg = Application.InputBox("Please select the header row:", xTitleId, "", Type:=8)
If TypeName(xTRg) = "Nothing" Then Exit Sub
Set WorkRng = Application.InputBox("Please select the data range(exclude the header row):", xTitleId, WorkRng.Address, Type:=8)
If TypeName(WorkRng) = "Nothing" Then Exit Sub
SplitRow = Application.InputBox("Split Row Num", xTitleId, Type:=1)
If SplitRow = 0 Then Exit Sub
Set xWs = WorkRng.Parent
Set xRow = WorkRng.Rows(1)
xIER = WorkRng.Rows.Count
xIER = WorkRng.Row + xIER - 1
Application.ScreenUpdating = False
For i = 1 To WorkRng.Rows.Count Step SplitRow
resizeCount = SplitRow
If (xIER - xRow.Row + 1) < SplitRow Then
resizeCount = (xIER - xRow.Row + 1)
End If
xRow.Resize(resizeCount).Copy
Set xWs = Application.Worksheets.Add(after:=Application.Worksheets(Application.Worksheets.Count))
If xIER > (xRow.Row + SplitRow - 1) Then
xWs.Name = xRow.Row & " - " & (xRow.Row + SplitRow - 1)
ElseIf xIER = xRow.Row Then
xWs.Name = xRow.Row
Else
xWs.Name = xRow.Row & " - " & xIER
End If
Application.ActiveSheet.Range("A1").PasteSpecial
Set xNTRg = Application.ActiveSheet.Range("A1")
xTRg.Copy
xNTRg.Insert
Set xRow = xRow.Offset(SplitRow)
Next
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
3. بعد ذلك، اضغط على مفتاح "F5"، ثم في مربع الحوار المنبثق، حدد صف الرأس (انظر لقطة الشاشة):

4. بعد ذلك، انقر فوق «موافق»، ثم في مربع الحوار الثاني، حدد نطاق البيانات الذي تريد التقسيم بناءً عليه حسب عدد الصفوف، كما هو موضح في لقطة الشاشة:

5. بعد ذلك، استمر في النقر على زر «موافق»، ثم في مربع الحوار الثالث، أدخل عدد الصفوف الذي تريد التقسيم بناءً عليه، كما هو موضح في لقطة الشاشة:

6. بعد ذلك، انقر فوق زر «موافق»، وسيتم تقسيم الجدول الرئيسي تلقائيًا إلى أوراق عمل متعددة وفقًا لعدد الصفوف، كما هو موضح في لقطة الشاشة التالية:

تقسيم جدول كبير إلى جداول متعددة استنادًا إلى قيمة العمود أو عدد الصفوف باستخدام Kutools لـ Excel
قد تبدو الرموز السابقة معقّدة لمعظم المستخدمين، لذا نقدّم لك ميزة رائعة من «Kutools لـ Excel» تُسمى «تقسيم البيانات». باستخدام هذه الأداة، يمكنك تقسيم جدول كبير إلى جداول متعددة بسرعة وسهولة—إما حسب العمود الرئيسي أو عدد الصفوف.
1. حدد نطاق البيانات الذي ترغب في تقسيمه، ثم انقر على «KUTOOLS PLUS» > «تقسيم البيانات»، كما هو موضح في لقطة الشاشة:

2. في مربع حوار «تقسيم البيانات إلى ورقات عمل متعددة»، اختر الإعدادات التي تناسب احتياجاتك:
(1.) اختر «تحديد العمود» أو «القيمة الثابتة» من قسم «أساس التقسيم» حسب الحاجة؛
(2.) اختر اسم أوراق العمل المُنشأة من القائمة المنسدلة «Rules»، كما يمكنك إضافة «بادئة» أو «لاحقة» إلى أسماء الأوراق.

3. بعد ذلك، انقر فوق زر «موافق»، وسيتم تقسيم الجدول الكبير تلقائيًا إلى عدة جداول صغيرة في ورقة عمل جديدة. راجع لقطات الشاشة التالية:
| تقسيم الجدول إلى جداول متعددة حسب قيمة العمود | تقسيم الجدول إلى جداول متعددة حسب عدد الصفوف |
![]() | ![]() |
Kutools لـ Excel- عزِّز Excel بقوة أكثر من 300 أداة أساسية، لتجعل عملك أسرع وأسهل، واستفد من ميزات الذكاء الاصطناعي لمعالجة البيانات بشكل أكثر ذكاءً وزيادة الإنتاجية.احصل عليه الآن
مقالات ذات صلة إضافية:
- تقسيم ملف عمل إلى ملفات ملفات Excel منفصلة في Excel
- قد تحتاج إلى تقسيم ملف عمل كبير إلى عدة ملفات Excel منفصلة، بحيث تُحفظ كل ورقة عمل في الملف كملف Excel مستقل. على سبيل المثال، يمكنك تقسيم ملف العمل إلى ملفات Excel منفصلة، ثم توزيع كل ملف على شخص مختلف للتعامل معه. وبهذه الطريقة، يمكنك تعيين أشخاص معيّنين لإدارة بيانات محددة والحفاظ على أمان معلوماتك. تعرض هذه المقالة طرقًا فعّالة لتقسيم ملف عمل كبير إلى ملفات Excel منفصلة استنادًا إلى كل ورقة عمل.
- تقسيم الاسم الكامل إلى العمود الأول والاسم الأخير في Excel
- افترض أن لديك قائمة بأسماء كما تظهر في لقطة الشاشة الأولى، مُدرجة في عمود واحد أدناه، وتحتاج إلى تقسيم كل اسم كامل إلى ثلاثة أعمدة منفصلة: عمود للاسم الأول، وآخر للاسم الأوسط، وثالث للاسم الأخير، تمامًا كما في لقطة الشاشة التالية. إليك بعض الطرق الذكية التي تساعدك على حل هذه المهمة بسلاسة.
- تقسيم عمود طويل إلى أعمدة متعددة في Excel
- إذا كانت لديك قائمة طويلة من البيانات في عمود Excel يصعب عرضها، فإن تقسيمها إلى أعمدة متعددة سيجعل عرضها أكثر سهولة ووضوحًا.
- تقسيم كلمة أو رقم إلى خلايا منفصلة في Excel
- إذا كانت لديك قائمة تحتوي على أرقام أو كلمات في ورقة عمل، وتحتاج الآن إلى تقسيم محتويات الخلية إلى أحرف منفصلة في خلايا مختلفة كما في لقطة الشاشة التالية، فكيف يمكنك تنفيذ هذه المهمة في Excel؟
- تقسيم قائمة طويلة إلى مجموعات متساوية في Excel
- إذا كانت لديك قائمة طويلة من البيانات وتحتاج إلى تقسيمها بسرعة وسهولة إلى مجموعات متساوية متعددة، كما في لقطة الشاشة التالية، فكيف يمكنك تنفيذ هذه المهمة في Excel؟
أفضل أدوات الإنتاجية لمكتبتك
عزِّز مهاراتك في 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.
- حزمة شاملة واحدة— إضافات Excel وWord وOutlook وPowerPoint بالإضافة إلى Office Tab Pro
- برنامج تثبيت واحد، ترخيص واحد— الإعداد خلال دقائق (جاهز لـ MSI)
- يعمل بشكل أفضل معًا— إنتاجية ميسَّرة عبر تطبيقات Office
- تجربة مجانية لمدة 30 يومًا بكامل الميزات— بدون تسجيل، بدون بطاقة ائتمان
- أفضل قيمة— وفِّر مقارنةً بشراء الإضافات بشكل منفصل





