كيفية تقسيم سلسلة النص بسرعة حسب الحالة في إكسيل؟
في Excel ، نقوم عادةً بتقسيم النص حسب العرض الثابت أو المحدد باستخدام وظيفة Text to Columns ، ولكن هل سبق لك أن حاولت تقسيم النص بالأحرف الكبيرة والصغيرة؟ على سبيل المثال ، لديك قائمة بالبيانات ، وتحتاج إلى تقسيمها إلى عمودين بناءً على الحالة: يحتوي أحدهما على سلسلة صغيرة ، والآخر يحتوي على سلسلة كبيرة كما هو موضح أدناه. لا تدعم وظيفة Text to Columns هذه العملية ، ومع ذلك ، يمكنني تقديم حيل لتقسيم سلسلة نصية بسرعة حسب الحالة في Excel.
تقسيم النص حسب الحالة باستخدام VBA
تقسيم النص إلى صفوف / أعمدة بواسطة فاصل مع كوتولس ل إكسيل
تقسيم النص حسب الحالة باستخدام VBA
في Excel ، لا يوجد سوى رمز ماكرو لتقسيم السلسلة بسرعة استنادًا إلى الأحرف الصغيرة والكبيرة.
1. صحافة ALT + F11 مفاتيح لفتح ميكروسوفت فيسوال باسيك للتطبيقات نافذة.
2. انقر إدراج > وحدة، والصق الكود أدناه في الفراغ وحدة النصي.
VBA: تقسيم السلسلة حسب الحالة.
Sub CamelCase()
'UpdatebyExtendoffice20160711
Dim xRg As Range
Dim xTxt As String
Dim xCell As Range
Dim xCount As Long
On Error Resume Next
If ActiveWindow.RangeSelection.Count > 1 Then
xTxt = ActiveWindow.RangeSelection.AddressLocal
Else
xTxt = ActiveSheet.UsedRange.AddressLocal
End If
LInput:
Set xRg = Nothing
Set xRg = Application.InputBox("Select a range:", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub
If xRg.Areas.Count > 1 Then
MsgBox "It not work in multiple selection", vbInformation, "Kutools for Excel"
GoTo LInput
End If
If xRg.Columns.Count > 1 Then
MsgBox "It only work in one column", vbInformation, "Kutools for Excel"
GoTo LInput
End If
On Error Resume Next
Application.ScreenUpdating = False
With CreateObject("vbscript.regexp")
.Pattern = "(\S)([A-Z]+[^A-Z])"
.Global = True
For Each xCell In xRg
xCount = .Execute(xCell).Count
If xCount Then xCell.Resize(, xCount + 1) = Split(.Replace(xCell, "$1" & Chr(1) & "$2"), Chr(1))
Next
End With
Application.ScreenUpdating = True
End Sub
3. صحافة F5 مفتاح ، وينبثق مربع حوار لتذكيرك بتحديد نصوص لتقسيمها. انظر لقطة الشاشة:
4. انقر OK، وتم تقسيم النصوص المحددة إلى عمودين ، يحتوي أحدهما على أحرف صغيرة والآخر يحتوي على أحرف كبيرة.
تقسيم النص إلى صفوف / أعمدة بواسطة فاصل مع كوتولس ل إكسيل
في كثير من الحالات ، قد ترغب في تقسيم خلية إلى عدة صفوف أو أعمدة بناءً على حرف معين. في Excel ، يمكن أن تساعدك وظيفة Text to Columns المضمنة فقط في تحويل خلية إلى أعمدة مباشرة ، ولكن لا تعمل في تحويل الصفوف. ومع ذلك ، مع كوتولس ل إكسيل - أداة مفيدة ومفيدة ، يمكنك تطبيقها تقسيم الخلايا أداة لتقسيم السلسلة بسرعة إلى صفوف أو عمود على أساس فاصل أو عرض ثابت.
كوتولس ل إكسيل, مع أكثر من 300 وظائف يدوية ، تجعل مهامك أكثر سهولة. |
بعد تركيب مجاني Kutools for Excel ، يرجى القيام بما يلي:
1. حدد الخلية التي تريد تقسيمها ، وانقر فوق كوتولس > دمج وتقسيم > تقسيم الخلايا. انظر لقطة الشاشة:
2. في ال تقسيم الخلايا في مربع الحوار ، تحقق من نوع التقسيم الذي تريده في النوع وانتقل للتحقق من المحدد المحدد الذي تريد التقسيم بناءً عليه في ملف تقسيم حسب الجزء. انظر لقطة الشاشة:
3. انقر Ok، ينبثق مربع حوار لتذكيرك بتحديد خلية لوضع محتويات الانقسام. انظر لقطة الشاشة:
4. بعد التحديد ، انقر فوق OK، وتم تقسيم الخلية المحددة إلى صفوف بناءً على المساحة. انظر لقطة الشاشة:
أفضل أدوات إنتاجية المكتب
عزز مهاراتك في Excel باستخدام Kutools for Excel، واختبر كفاءة لم يسبق لها مثيل. يقدم Kutools for Excel أكثر من 300 ميزة متقدمة لتعزيز الإنتاجية وتوفير الوقت. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير
- تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
- فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
- يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!