Skip to main content

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

Author: Xiaoyang Last Modified: 2025-05-30

إذا كان لديك جدول كبير في Excel يحتوي على عدة أعمدة ومئات أو آلاف الصفوف، قد ترغب في تقسيمه إلى جداول أصغر وأكثر قابلية للإدارة. على سبيل المثال، قد تحتاج إلى فصل البيانات بناءً على قيم عمود معين أو تقسيمها إلى أجزاء تحتوي على عدد ثابت من الصفوف. يقدم هذا الدليل خطوات لتنفيذ هذه المهمة بفعالية.

الجدول الرئيسي   تقسيم الجدول إلى عدة جداول حسب قيمة العمود تقسيم الجدول إلى عدة جداول حسب عدد الصفوف
A screenshot of a large table in Excel before splitting Arrow A screenshot of an Excel table split by column values A screenshot of an Excel table split by row count

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

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

تقسيم جدول كبير إلى عدة جداول بناءً على قيمة العمود أو عدد الصفوف باستخدام Kutools لـ Excel


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

لتقسيم هذا الجدول الكبير إلى عدة جداول بناءً على قيمة عمود معينة، يمكن أن يساعدك الكود التالي الخاص بـ VBA. يرجى القيام بما يلي:

1. اضغط باستمرار على مفتاحي "ALT" + "F11" لفتح نافذة "Microsoft Visual Basic for Applications".

2. انقر على "إدراج" > "وحدة"، والصق الكود التالي في نافذة "الوحدة".

كود 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" لتشغيل هذا الكود، وسيظهر مربع منبثق، يرجى تحديد صف العنوان من بياناتك، انظر إلى الصورة:

A screenshot showing how to select the header row for splitting tables

4. ثم، انقر على "موافق"، وستظهر نافذة أخرى، يرجى تحديد بيانات العمود الذي تريد تقسيم الجدول بناءً عليه، انظر إلى الصورة:

A screenshot showing how to select the column for splitting tables by values

5. انقر على "موافق". تم الآن تقسيم الجدول الكبير إلى أوراق عمل متعددة بناءً على قيم الأعمدة، مع وجود الأوراق الجديدة بعد الورقة الرئيسية. وقد تم تسمية الأوراق الجديدة بالقيم الموجودة في العمود. انظر إلى الصورة:

A screenshot showing multiple worksheets created after splitting by column values


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

إذا كنت بحاجة إلى تقسيم الجدول إلى عدة جداول بناءً على عدد الصفوف، يمكن أن يساعدك الكود التالي الخاص بـ VBA.

1. اضغط باستمرار على مفتاحي "ALT" + "F11" لفتح نافذة "Microsoft Visual Basic for Applications".

2. انقر على "إدراج" > "وحدة"، والصق الكود التالي في نافذة "الوحدة".

كود 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"، وفي النافذة المنبثقة، حدد صف العنوان، انظر إلى الصورة:

A screenshot showing how to select the header row for splitting by row count

4. ثم، انقر على "موافق"، وفي النافذة الثانية، حدد نطاق البيانات التي تريد تقسيمها حسب عدد الصفوف، انظر إلى الصورة:

A screenshot showing how to select the data range for splitting by rows

5. وبعد ذلك، استمر بالنقر على زر "موافق"، وفي النافذة الثالثة، أدخل عدد الصفوف التي تريد التقسيم بناءً عليها، انظر إلى الصورة:

A screenshot showing how to enter the number of rows for splitting in Excel

6. ثم، انقر على زر "موافق"، تم تقسيم الجدول الرئيسي إلى أوراق عمل متعددة بناءً على عدد الصفوف كما هو موضح في الصورة أدناه:

A screenshot of multiple worksheets created after splitting by row count


تقسيم جدول كبير إلى عدة جداول بناءً على قيمة العمود أو عدد الصفوف باستخدام Kutools لـ Excel

قد تكون الأكواد السابقة صعبة بالنسبة لمعظم المستخدمين، لذلك سأقدم هنا ميزة رائعة - "تقسيم البيانات" من "Kutools لـ Excel". باستخدام هذه الأداة، يمكنك تقسيم جدول كبير إلى عدة جداول حسب العمود الرئيسي أو عدد الصفوف بسرعة وسهولة.

Kutools لـ Excel يقدم أكثر من 300 ميزة متقدمة لتبسيط المهام المعقدة، مما يعزز الإبداع والكفاءة. بالتكامل مع قدرات الذكاء الاصطناعي، يقوم Kutools بأتمتة المهام بدقة، مما يجعل إدارة البيانات أمرًا سهلاً للغاية. معلومات تفصيلية عن Kutools لـ Excel... نسخة تجريبية مجانية...

1. حدد نطاق البيانات الذي تريد تقسيمه، ثم انقر على "Kutools Plus" > "تقسيم البيانات"، انظر إلى الصورة:

2. في مربع الحوار "تقسيم البيانات إلى أوراق عمل متعددة"، حدد الإعدادات حسب حاجتك:

(1.) حدد "تحديد عمود" أو "عدد صفوف ثابت" من قسم "أساس التقسيم" حسب الحاجة؛

(2.) حدد اسم الأوراق الجديدة من قائمة القواعد المنسدلة، ويمكنك أيضًا إضافة "بادئة" أو "لاحقة" لأسماء الأوراق.

A screenshot showing settings for splitting data using Kutools

3. ثم، انقر على زر "موافق"، والآن تم تقسيم الجدول الكبير إلى عدة جداول صغيرة في مصنف جديد. انظر إلى الصور:

تقسيم الجدول إلى عدة جداول حسب قيمة العمود تقسيم الجدول إلى عدة جداول حسب عدد الصفوف
A screenshot of an Excel table split into worksheets by column values using Kutools A screenshot of an Excel table split into worksheets by row count using Kutools

Kutools لـ Excel - قم بتعزيز Excel بأكثر من 300 أدوات أساسية. استمتع بميزات ذكاء اصطناعي مجانية بشكل دائم! احصل عليه الآن


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

  • تقسيم مصنف إلى ملفات Excel منفصلة في Excel
  • قد تحتاج إلى تقسيم مصنف كبير إلى ملفات Excel منفصلة عن طريق حفظ كل ورقة عمل من المصنف كملف Excel مستقل. على سبيل المثال، يمكنك تقسيم مصنف إلى عدة ملفات Excel فردية ومن ثم تسليم كل ملف إلى شخص مختلف للتعامل معه. بهذه الطريقة، يمكنك الحصول على أشخاص معينين للتعامل مع بيانات محددة والحفاظ على بياناتك آمنة. سيقدم هذا المقال طرقًا لتقسيم مصنف كبير إلى ملفات Excel منفصلة بناءً على كل ورقة عمل.
  • تقسيم الاسم الكامل إلى الاسم الأول والأخير في Excel
  • لنفترض أن لديك قائمة بأسماء كما هو موضح في أول لقطة شاشة في عمود واحد أدناه، وتحتاج إلى تقسيم الاسم الكامل إلى عمود الاسم الأول، عمود الاسم الأوسط وعمود الاسم الأخير كما هو موضح في لقطة الشاشة التالية. إليك بعض الطرق الذكية لمساعدتك في حل هذه المشكلة.
  • تقسيم عمود طويل إلى عدة أعمدة في Excel
  • إذا كان لديك عمود طويل من البيانات في Excel والذي سيكون مشكلة عند عرضه. ولكن الآن إذا تمكنت من تقسيم مثل هذه القائمة الطويلة إلى عدة أعمدة في Excel، فسيجعل العرض أكثر سهولة.
  • تقسيم كلمة أو رقم إلى خلايا منفصلة في Excel
  • إذا كان لديك قائمة من الأرقام أو الكلمات في ورقة عمل، والآن تحتاج إلى تقسيم محتويات الخلية إلى أحرف في خلايا مختلفة كما هو موضح في لقطة الشاشة التالية، كيف يمكنك التعامل مع هذه المهمة في Excel؟

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

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

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


Office Tab يقدم واجهة التبويب لـ Office، ويجعل عملك أسهل بكثير

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