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

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

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

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

بيانات عينة 1بيانات عينة 2بيانات عينة 3

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


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

يمكنك الاستفادة من كود VBA التالي لنسخ الصفوف المحددة من جميع أوراق العمل في الملف استنادًا إلى شرط معيّن، ولصقها في ورقة عمل جديدة. يُرجى اتباع الخطوات التالية:

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

2. انقرإدراج > وحدة نمطية (Module)، ثم الصق الكود التالي في نافذة الوحدة النمطية.

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

Public Sub CopyRows_ValuesAndNumberFormats()
Dim xWs As Worksheet
Dim xCWs As Worksheet
Dim xRg As Range
Dim xStrName As String
Dim xRStr As String
Dim xRRg As Range
Dim xC As Integer
On Error Resume Next
Application.DisplayAlerts = False
xStr = "Kutools for Excel"
xRStr = "Completed"
Set xCWs = ActiveWorkbook.Worksheets.Item(xStr)
If Not xCWs Is Nothing Then
    xCWs.Delete
End If
Set xCWs = ActiveWorkbook.Worksheets.Add
xCWs.Name = xStr
xC = 1
For Each xWs In ActiveWorkbook.Worksheets
    If xWs.Name <> xStr Then
        Set xRg = xWs.Range("C:C")
        Set xRg = Intersect(xRg, xWs.UsedRange)
        For Each xRRg In xRg
            If xRRg.Value = xRStr Then
               xRRg.EntireRow.Copy
               xCWs.Cells(xC, 1).PasteSpecial xlPasteValuesAndNumberFormats
               xC = xC + 1
            End If
        Next xRRg
    End If
Next xWs
Application.DisplayAlerts = True
End Sub

ملاحظة: في الكود أعلاه:

  • النص "Completed" في هذاxRStr = «Completed»النص البرمجي يشير إلى الشرط المعيّن الذي تريد نسخ الصفوف بناءً عليه؛
  • C:C في هذاSet xRg = xWs.Range(«C:C»)، يشير النص البرمجي إلى تحديد العمود الذي يحتوي على الشرط.

3. بعد ذلك، اضغط على مفتاحF5 لتشغيل هذا الكود، وسيتم نسخ ولصق جميع الصفوف التي تحقق الشرط المعيّن في ورقة عمل جديدة باسم Kutools لـ Excel داخل المصنف الحالي. راجع لقطة الشاشة:

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



مقالات ذات صلة إضافية حول سحب أو نسخ البيانات:

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

  • محرر متعدد الأسطر فائق الكفاءة من شريط الصيغة (يمكّنك من تحرير أسطر نصية متعددة والمعادلات بسهولة)؛وضع القراءة (ليُسهّل عليك قراءة وتحرير عدد كبير من الخلايا)؛لصق إلى نطاق التصفية...
  • نسخ صفوف أو أعمدة تحتوي على خلايا مدمجةمع الاحتفاظ بالبيانات؛ تقسيم محتوى الخلايا؛دمج خلايا الصفوف المكررة وحساب المجموع أو المتوسط... منع إدخال قيم مكررة في الخلايا؛مقارنة النطاقات...
  • تحديد الصفوف المكررة أو الفريدة؛تحديد الصفوف الفارغة (جميع الخلايا فارغة)؛البحث المتقدم والعثور على المشابهعبر العديد من ملفات العمل؛ تحديد عشوائي...
  • إدخال محتوى متعدد الخلايا من النسخ الدقيقدون تغيير مراجع الصيغ؛إنشاء مراجع تلقائيةلأوراق عمل متعددة؛إدراج رموز التعداد النقطي، ومربعات الاختيار والمزيد...
  • احفظ الصيغ المفضلة وأدخلها بسرعة، والنطاقات، والرسوم البيانية، والصور؛شفر الخلايابكلمة مرور؛أنشئ قائمة بريد إلكترونيوأرسل رسائل البريد الإلكتروني...
  • استخراج النص، وإضافة نص، وحذف الأحرف من موقع معين،وإزالة المسافات؛ وإنشاء إحصاءات صفحة البيانات وطباعتها؛والتحويل بين محتوى الخلايا والتعليقات...
  • مرشح متقدم (لحفظ مخططات التصفية وتطبيقها على أوراق عمل أخرى)؛ترتيب متقدمحسب الشهر أو الأسبوع أو اليوم، والتكرار، وغير ذلك؛تصفية خاصةحسب التنسيق العريض أو المائل...
  • ادمج ملفات العمل وأوراق العمل؛ واجمع الجداول استنادًا إلى العمود الرئيسي؛وقسّم البيانات إلى أوراق عمل متعددة؛وحَوِّل ملفات XLS وXLSX وPDF دفعةً واحدة...
  • تجميع حسب جدول البيانات المحوريرقم الأسبوع، ويوم الأسبوع والمزيد... عرض الخلايا غير المؤمَّنة وقفل التحديدبألوان مختلفة؛تمييز الخلايا التي تحتوي على صيغة أو اسم...
kte tab 201905
  • تمكّن من التحرير والقراءة باستخدام علامات التبويب في Word وExcel وPowerPoint، بالإضافة إلى Publisher وAccess وVisio وProject.
  • افتح وأنشئ مستندات متعددة في علامات تبويب جديدة داخل النافذة نفسها، بدلاً من فتح نوافذ جديدة.
  • يزيد إنتاجيتك بنسبة 50% ويوفّر عليك مئات نقرات الفأرة كل يوم!
officetab bottom