انتقل إلى المحتوى الرئيسي

تقسيم السلاسل النصية بواسطة محدد إلى صفوف متعددة - 3 حيل سريعة

عادة ، يمكنك استخدام ميزة Text to Column لتقسيم محتويات الخلية إلى أعمدة متعددة بواسطة محدد معين ، مثل الفاصلة ، والنقطة ، والفاصلة المنقوطة ، والشرطة المائلة ، وما إلى ذلك ، ولكن ، في بعض الأحيان ، قد تحتاج إلى تقسيم محتويات الخلية المحددة إلى صفوف متعددة وكرر البيانات من الأعمدة الأخرى كما هو موضح أدناه. هل لديك أي طرق جيدة للتعامل مع هذه المهمة في Excel؟ سيقدم هذا البرنامج التعليمي بعض الطرق الفعالة لإكمال هذه المهمة في Excel.


فيديو: تقسيم السلاسل النصية عن طريق التحديد إلى عدة صفوف


الطريقة أ: تقسيم النص المحدد إلى صفوف متعددة بواسطة كود فبا

في هذا القسم ، سأقدم رمزي VBA للمساعدة في تقسيم محتويات الخلية المفصولة بمحدد معين.

تقسيم النص مفصولاً بفاصلة ، ومسافة ، وفاصلة منقوطة ، وما إلى ذلك.

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

 ملاحظات: هذا الرمز لا الدعم فك، من الأفضل نسخ البيانات احتياطيًا قبل تطبيق هذا الرمز.

الخطوة 1: افتح محرر وحدة VBA وانسخ الكود

1. قم بتنشيط الورقة التي تريد استخدامها. ثم اضغط على ALT + F11 مفاتيح لفتح ميكروسوفت فيسوال باسيك للتطبيقات نافذة.

2. في النافذة المفتوحة ، انقر فوق إدراج > وحدة لإنشاء وحدة فارغة جديدة.

3. ثم انسخ الكود أدناه والصقه في الوحدة الفارغة.

كود فبا: تقسيم النص حسب محدد معين (فاصلة ، نقطة ، مسافة ، إلخ.)

Sub SplitTextIntoRows()
'UpdatebyExtendoffice
    Dim xSRg, xIptRg, xCrRg, xRg As Range
    Dim xSplitChar As String
    Dim xArr As Variant
    Dim xFNum, xFFNum, xRow, xColumn, xNum As Integer
    Dim xWSh As Worksheet
    Set xSRg = Application.InputBox("Select a range:", "Kutools for Excel", , , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    xSplitChar = Application.InputBox("Type delimiter:", "Kutools for Excel", , , , , , 2)
    If xSplitChar = "" Then Exit Sub
    Application.ScreenUpdating = False
    xRow = xSRg.Row
    xColumn = xSRg.Column
    Set xWSh = xSRg.Worksheet
    For xFNum = xSRg.Rows.Count To 1 Step -1
        Set xRg = xWSh.Cells.Item(xRow + xFNum - 1, xColumn)
        xArr = Split(xRg, xSplitChar)
        xIndex = UBound(xArr)
        For xFFNum = LBound(xArr) To UBound(xArr)
            xRg.EntireRow.Copy
            xRg.Offset(1, 0).EntireRow.Insert Shift:=xlShiftDown
            xRg.Worksheet.Cells(xRow + xFNum, xColumn) = xArr(xIndex)
            xIndex = xIndex - 1
        Next
        xRg.EntireRow.Delete
    Next
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End Sub   

الخطوة 2: قم بتنفيذ الكود للحصول على النتيجة

1. بعد لصق الكود ، الرجاء الضغط F5 مفتاح لتشغيل هذا الرمز. بعد ذلك ، سيظهر مربع موجه لتذكيرك بتحديد الخلايا التي تحتوي على النص المحدد الذي تريد تقسيمه ، انظر الصورة:

2. ثم انقر فوق OK، يظهر مربع موجه آخر لتذكيرك بكتابة الفاصل الذي تريد تقسيم البيانات بناءً عليه. هنا ، اكتب فاصلة ومسافة (،) ، انظر الصورة:

3. أخيرًا ، انقر فوق OK زر. الآن ، سترى أن السلاسل النصية المحددة مقسمة إلى صفوف بناءً على الفاصلة ويتم تكرار بيانات الأعمدة النسبية الأخرى كما هو موضح أدناه:


تقسيم النص مفصولة بفاصل أسطر

إذا كانت محتويات الخلية مفصولة بفواصل أسطر ، لتقسيمها إلى صفوف متعددة ، فإليك رمز VBA آخر يمكن أن يساعدك.

 ملاحظات: هذا الرمز لا الدعم فك من الأفضل نسخ البيانات احتياطيًا قبل تطبيق هذا الرمز.

الخطوة 1: افتح محرر وحدة VBA وانسخ الكود

1. صحافة ALT + F11 مفاتيح لفتح ميكروسوفت فيسوال باسيك للتطبيقات نافذة.

2. في النافذة المفتوحة ، انقر فوق إدراج > وحدة لإنشاء وحدة فارغة جديدة.

3. ثم انسخ الكود أدناه والصقه في الوحدة الفارغة.

كود فبا: تقسيم النص بفاصل أسطر

Sub SplitTextIntoRows()
'UpdatebyExtendoffice
    Dim xSRg, xIptRg, xCrRg, xRg As Range
    Dim xSplitChar As String
    Dim xArr As Variant
    Dim xFNum, xFFNum, xRow, xColumn, xNum As Integer
    Dim xWSh As Worksheet
    Set xSRg = Application.InputBox("Select a range:", "Kutools for Excel", , , , , , 8)
    If xSRg Is Nothing Then Exit Sub
    xSplitChar = Chr(10)
    Application.ScreenUpdating = False
    xRow = xSRg.Row
    xColumn = xSRg.Column
    Set xWSh = xSRg.Worksheet
    For xFNum = xSRg.Rows.Count To 1 Step -1
        Set xRg = xWSh.Cells.Item(xRow + xFNum - 1, xColumn)
        xArr = Split(xRg, xSplitChar)
        xIndex = UBound(xArr)
        For xFFNum = LBound(xArr) To UBound(xArr)
            xRg.EntireRow.Copy
            xRg.Offset(1, 0).EntireRow.Insert Shift:=xlShiftDown
            xRg.Worksheet.Cells(xRow + xFNum, xColumn) = xArr(xIndex)
            xIndex = xIndex - 1
        Next
        xRg.EntireRow.Delete
    Next
    Application.CutCopyMode = False
    Application.ScreenUpdating = True
End Sub 

الخطوة 2: قم بتنفيذ الكود للحصول على النتيجة

1. بعد لصق الكود ، الرجاء الضغط F5 مفتاح لتشغيل هذا الرمز. في المربع المنبثق ، يرجى تحديد الخلايا التي تريد تقسيمها ، انظر الصورة:

2. ثم انقر فوق OK الزر ، يتم تقسيم البيانات الموجودة في الخلايا المحددة إلى صفوف كما هو موضح أدناه لقطة الشاشة:


الطريقة ب: 10 ثوانٍ لتقسيم النص المحدد إلى صفوف متعددة بواسطة Kutools for Excel

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

الخطوة 1: حدد ميزة تقسيم البيانات إلى صفوف

انقر كوتولس > دمج وتقسيم > تقسيم البيانات إلى صفوف، انظر لقطة الشاشة:

الخطوة 2: حدد خلايا البيانات والمحدد للتقسيم

في مربع الحوار المنبثق ، استخدم الخيارات التالية:

  • 1). حدد قائمة الخلايا التي تريد الفصل منها النطاق (عمود واحد) مربع الكتابة؛
  • 2). ثم اختر المحدد الذي يفصل بين بياناتك ، هنا سأختار أخرى واكتب فاصلة ومسافة (،) في مربع النص ؛
  • 3). أخيرًا ، انقر فوق OK .

الآن ، تم تحويل الخلايا المحددة ذات السلاسل النصية المحددة إلى صفوف متعددة بناءً على الفاصل المحدد ، انظر الصورة:

 تنويهات: إذا كنت ترغب في استعادة البيانات الأصلية ، فما عليك سوى الضغط على CTRL + Z للتراجع.

سهل الاستخدام؟ مهتم بهذه الميزة من فضلك انقر للتنزيل للحصول على نسخة تجريبية مجانية لمدة 30 يومًا.


الطريقة ج: تقسيم النص المحدد إلى صفوف متعددة Power Query

إذا كنت تقوم بتشغيل Office 365 أو Excel 2016 والإصدارات الأحدث ، Power Query هي أداة قوية يمكن أن تساعدك على تقسيم النص المحدد إلى صفوف أو أعمدة متعددة. يكون مفيدًا إذا كنت تريد تحديث البيانات المقسمة عند تغيير بياناتك الأصلية. يرجى اتباع الخطوات التالية لإنهائها:

الخطوة 1: أدخل جدول البيانات Power Query

1. حدد نطاق البيانات الذي تريد استخدامه ، ثم انقر فوق البيانات > من الجدول، انظر لقطة الشاشة:

 تنويهات: في Excel 2019 و Office 365 ، انقر فوق البيانات > من الجدول / النطاق.

2. في المنبثقة اصنع جدول مربع الحوار، انقر فوق OK زر لإنشاء جدول ، انظر لقطة الشاشة:

3. الآن، و Power Query محرر يتم عرض نافذة مع البيانات ، انظر الصورة:

الخطوة 2: قم بإجراء التحولات Power Query

1. حدد العمود الذي تريد تقسيمه. ثم انقر فوق الصفحة الرئيسية > عمود الانقسام > بواسطة محدد، انظر لقطة الشاشة:

2. في ال انقسام العمود بواسطة محدد صندوق المحادثة:

لتقسيم السلاسل النصية بفاصلة ، ومسافة ، وفاصلة منقوطة ، وما إلى ذلك ، يرجى القيام بذلك على النحو التالي:

  • 1). اختر المحدد بين بياناتك مفصولة عن حدد أو أدخل المحدد قائمة منسدلة؛
  • 2). تحديد كل تواجد للمحدد من انقسام في قسم.
  • 3). ثم اضغط خيارات متقدمة لتوسيع القسم وحدد الصفوف تحت انقسام إلى;
  • 4). أخيرًا ، انقر فوق OK لإغلاق مربع الحوار هذا.

لتقسيم السلاسل النصية إلى عدة صفوف بواسطة فاصل الارتباط ، يرجى القيام بما يلي:

  • 1). أختر Custom من حدد أو أدخل المحدد قائمة منسدلة؛
  • 2). من أدخل الأحرف الخاصة المنسدلة، انقر فوق سطر تغذيةوالشخصيات # (lf) سيتم إدراجه في مربع النص أسفل ملف Custom تلقائيا؛
  • 3). تحديد كل تواجد للمحدد من قسم الانقسام ؛
  • 4). ثم اضغط خيارات متقدمة لتوسيع القسم وحدد الصفوف تحت انقسام إلى;
  • 5). أخيرًا ، انقر فوق OK لإغلاق مربع الحوار هذا.

3. الآن ، تم تقسيم البيانات المحددة إلى صفوف متعددة كما هو موضح أدناه لقطة الشاشة:

الخطوة 3: إخراج Power Query إلى جدول إكسل

1. وبعد ذلك ، يجب إخراج البيانات في ورقة العمل الخاصة بك. من فضلك اضغط الصفحة الرئيسية > إغلاق وتحميل > إغلاق وتحميل / إغلاق وتحميل إلى، (هنا ، سأضغط إغلاق وتحميل) ، انظر لقطة الشاشة:

 تنويهات: انقر إغلاق وتحميل ستخرج البيانات إلى ورقة عمل جديدة ؛ انقر إغلاق وتحميل إلى الخيار ، سيتم إخراج البيانات إلى أي ورقة أخرى تحتاجها.

2. أخيرًا ، سيتم تحميل البيانات إلى ورقة عمل جديدة ، انظر الصورة:

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


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

  • قسّم قيم الخلية إلى أعمدة متعددة
  • في Excel ، عندما تريد تقسيم قائمة قيم الخلايا إلى أعمدة متعددة بواسطة محددات معينة ، مثل الفاصلة ، والمسافة ، والنقطة ، والسطر الجديد ، إلخ ، عادةً ، قد تساعدك ميزة Text To Columns المضمنة في إنهاء خطوة المهمة هذه خطوة. في هذه المقالة ، سأتحدث عن بعض الحيل الجيدة لتقسيم قيم الخلية إلى أعمدة أو صفوف متعددة بسهولة وبسرعة.
  • قسِّم خلية إلى عدة صفوف أو أعمدة
  • لنفترض أن لديك خلية واحدة تحتوي على محتويات متعددة مفصولة بحرف معين ، على سبيل المثال ، فاصلة منقوطة ، ثم تريد تقسيم هذه الخلية الطويلة إلى صفوف أو أعمدة متعددة بناءً على الفاصلة المنقوطة ، في هذه الحالة ، هل لديك أي طرق سريعة لحلها في Excel؟
  • تقسيم النص حسب الحالة
  • في Excel ، نقوم عادةً بتقسيم النص حسب العرض الثابت أو المحدد باستخدام وظيفة Text to Columns ، ولكن هل سبق لك أن حاولت تقسيم النص بالأحرف الكبيرة والصغيرة؟ على سبيل المثال ، لديك قائمة بالبيانات ، وتحتاج إلى تقسيمها إلى عمودين بناءً على الحالة: يحتوي أحدهما على سلسلة صغيرة ، والآخر يحتوي على سلسلة كبيرة كما هو موضح أدناه. لا تدعم وظيفة Text to Columns هذه العملية ، ومع ذلك ، يمكنني تقديم حيل لتقسيم سلسلة نصية بسرعة حسب الحالة في Excel.
  • قسّم الرقم إلى أرقام فردية
  • لنفترض أنك بحاجة إلى تقسيم أو تقسيم الرقم إلى أرقام فردية كما هو موضح أدناه ، فماذا يمكنك أن تفعل لتحقيق ذلك؟ ستوفر لك هذه المقالة طريقتين.
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations