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

كيفية إدخال مسافات قبل الأحرف الكبيرة في Excel؟

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


أدخل مسافات قبل الأحرف الكبيرة باستخدام الوظيفة المحددة بواسطة المستخدم

لسوء الحظ ، لا توجد طريقة مباشرة لإضافة مسافات قبل الأحرف الكبيرة في Excel ، ولكن يمكنك إنشاء وظيفة محددة بواسطة المستخدم لحل هذه المهمة.

1. قم بتنشيط ورقة العمل الخاصة بك التي تحتوي على سلاسل النص التي تريد إضافة مسافات إليها.

2. اضغط باستمرار على ALT + F11 مفاتيح لفتح نافذة ميكروسوفت فيسوال باسيك للتطبيقات.

3. انقر إدراج > وحدة، والصق الكود التالي في ملف نافذة الوحدة.

رمز فبا: أدخل مسافات قبل الأحرف الكبيرة

Function AddSpaces(pValue As String) As String
'Update 20140723
Dim xOut As String
xOut = VBA.Left(pValue, 1)
For i = 2 To VBA.Len(pValue)
   xAsc = VBA.Asc(VBA.Mid(pValue, i, 1))
   If xAsc >= 65 And xAsc <= 90 Then
      xOut = xOut & " " & VBA.Mid(pValue, i, 1)
   Else
      xOut = xOut & VBA.Mid(pValue, i, 1)
   End If
Next
AddSpaces = xOut
End Function

4. ثم احفظ وأغلق هذا الرمز ، عد إلى ورقة العمل ، وأدخل هذه الصيغة = مساحات إضافية (A1) في خلية فارغة بجانب البيانات الخاصة بك ، انظر لقطة الشاشة:
doc-add-space-before-uppercase-1

5. ثم اسحب مقبض التعبئة فوق النطاق الذي تريد أن تحتوي على هذه الصيغة ، ستحصل على المسافات التي تم إدخالها قبل كل حرف كبير.
doc-add-space-before-uppercase-1

قم بإزالة المسافات البادئة / اللاحقة / الزائدة في الخلايا بسهولة

كوتولس ل إكسيل إزالة المسافات تتيح الأداة المساعدة لمستخدمي Excel إمكانية إزالة جميع المسافات البادئة ، والمسافات الزائدة ، والمسافات الزائدة ، أو جميع المسافات من الخلايا المحددة بسهولة.


مساحة إزالة الإعلانات 1

أدخل مسافات قبل الأحرف الكبيرة برمز VBA

إليك رمز VBA آخر يمكنه تقديم خدمة لك ، يرجى القيام بما يلي:

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

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

رمز فبا: أدخل مسافات قبل الأحرف الكبيرة

Sub AddSpacesRange()
'Update 20140723
Dim Rng As Range
Dim WorkRng As Range
Dim xOut As String
Dim xValue As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For Each Rng In WorkRng
    xValue = Rng.Value
    xOut = VBA.Left(xValue, 1)
    For i = 2 To VBA.Len(xValue)
       xAsc = VBA.Asc(VBA.Mid(xValue, i, 1))
       If xAsc >= 65 And xAsc <= 90 Then
          xOut = xOut & " " & VBA.Mid(xValue, i, 1)
       Else
          xOut = xOut & VBA.Mid(xValue, i, 1)
       End If
    Next
    Rng.Value = xOut
Next
Application.ScreenUpdating = True
End Sub

3. ثم اضغط F5 مفتاح لتنفيذ هذا الرمز ، سيظهر مربع موجه للسماح لك بتحديد نطاق البيانات الذي تريد استخدامه.
doc-add-space-before-uppercase-1

4. ثم انقر فوق OK لإغلاق مربع المطالبة هذا ، تم إدخال المسافات قبل الأحرف الكبيرة مرة واحدة ، انظر لقطة الشاشة:
doc-add-space-before-uppercase-1


أدخل مسافة قبل كل أحرف كبيرة باستخدام Kutools for Excel

كوتولس ل إكسيل إضافة نص يمكن أن تساعدك الأداة المساعدة في تجاوز وحدات ماكرو VBA وإدخال مساحة قبل كل أحرف كبيرة بسهولة في Excel.

كوتولس ل إكسيل - مزود بأكثر من 300 أداة أساسية لبرنامج Excel. استمتع بتجربة مجانية كاملة المواصفات لمدة 30 يومًا دون الحاجة إلى بطاقة ائتمان! التحميل الان!

1. حدد النطاق الذي ستدخل فيه مسافة قبل الأحرف الكبيرة ، وانقر فوق كوتولس > نص > إضافة نص. انظر لقطة الشاشة:

2. في مربع الحوار فتح إضافة نص ، اكتب مسافة في ملف نص مربع ، تحقق من أضف فقط إلى الخيار وحدد الحرف الأول كبير من أضف فقط إلى قائمة منسدلة.

3. انقر على Ok زر لإدخال مسافة قبل كل أحرف كبيرة كما هو موضح في لقطة الشاشة التالية:
doc إضافة مسافات قبل الأحرف الكبيرة 7

كوتولس ل إكسيل - شحن برنامج Excel بأكثر من 300 أداة أساسية. استمتع بتجربة مجانية كاملة المواصفات لمدة 30 يومًا دون الحاجة إلى بطاقة ائتمان! احصل عليه الآن

ملاحظة: ستضيف هذه الطريقة أيضًا مسافة في بداية الخلايا إذا كان الحرف الأول كبيرًا. يمكنك تطبيق كوتولس > نص > إزالة المسافات لإزالة كافة المسافات البادئة من الخلايا المحددة.


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

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

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

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

الوصف


يجلب Office Tab الواجهة المبوبة إلى Office ، ويجعل عملك أسهل بكثير

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
Comments (9)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
This function handles two problems that the given solution doesn't cover:
1. non-English text (with diacritical marks)
2. successive capitals that should not have spaces after them

` Private Function AddSpaces(sText As String)As String
' Inserts a space immediately before a capital letter, except when successive characters are each capitalized.
' Last Updated: 2022-07-04
'
Dim sRet As String, i As Integer, sChar As String, bPrevWasUCase As Boolean

sRet = Left(sText, 1)
For i = 2 To Len(sText)
sChar = Mid(sText, i, 1)
If sChar = UCase(sChar) And Not bPrevWasUCase Then
sRet = sRet & " " & sChar
bPrevWasUCase = True
Else
sRet = sRet & sChar
bPrevWasUCase = False
End If
Next i

AddSpaces= sRet
End Function`
This comment was minimized by the moderator on the site
Hello friend,

Thanks for your share. I tried your VBA code, but it doesn't work. Our VBA code can handle the non-english text. I have test the french text and spaces are successfully inserted before the capital letters.

Sincerely,
Mandy
This comment was minimized by the moderator on the site
Hello

First thanks a lot for your code example and the explanations. It works very well for my case.

I just have 1 Problem, some of the Strings contain words like URL, which should not be seperated.
Do you see a way to except for example "URL" from adding spaces?

Would be very nice if you can help. I tried already a while, but i dont know how to solve this..


Best regards
luca
This comment was minimized by the moderator on the site
hi wanna ask you if you found solution for you case, if you found solution please provide me with that
This comment was minimized by the moderator on the site
Hi,
Thanks for your comment and advice. I have sent your suggestion to the Kutools project team, I’m sure they’ll improve it soon.
This comment was minimized by the moderator on the site
Found a solution?
This comment was minimized by the moderator on the site
Hi there, your code works fantastic. Do you know how to adapt code 20140723 to work on multiple sheets? I would like to add spaces between capital letters throughout the entire workbook. Thanks!
This comment was minimized by the moderator on the site
i need a help in excel i want to find Uppercase in a cell. for example: Sagar Paul MBA 16:04 i want MBA to be highlighted
This comment was minimized by the moderator on the site
I hope you can see it and give it a trial. Sub Test() Dim Rg As Range, xCell As Range Dim i As Long Dim xChar As String Set Rg = Application.Selection For Each xCell In Rg For i = 1 To xCell.Characters.Count xChar = xCell.Characters(i, 1).Text If Asc(xChar) > 64 And Asc(xChar) < 91 Then xCell.Characters(i, 1).Font.Color = vbRed End If Next Next End Sub
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations