Note: The other languages of the website are Google-translated. Back to English

كيفية إزالة الأحرف أو الكلمات المكررة في سلسلة من الخلية؟

لنفترض أن هناك أحرفًا أو كلمات مكررة في كل خلية ، وتريد إزالة التكرارات وترك أحرف أو كلمات فريدة فقط. كيف يمكنك حل هذه المشكلة في Excel؟

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

قم بإزالة الكلمات المكررة المفصولة بعلامات ترقيم بوظيفة محددة بواسطة المستخدم


السهم الأزرق الحق فقاعة قم بإزالة الأحرف المكررة من السلسلة النصية باستخدام الوظيفة المحددة بواسطة المستخدم

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

doc-remove-Duplicate-character-1

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

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

رمز فبا: إزالة الأحرف المكررة من سلسلة نصية في خلية

Function RemoveDupes1(pWorkRng As Range) As String
'Updateby Extendoffice
Dim xValue As String
Dim xChar As String
Dim xOutValue As String
Set xDic = CreateObject("Scripting.Dictionary")
xValue = pWorkRng.Value
For i = 1 To VBA.Len(xValue)
    xChar = VBA.Mid(xValue, i, 1)
    If xDic.Exists(xChar) Then
    Else
        xDic(xChar) = ""
        xOutValue = xOutValue & xChar
    End If
Next
RemoveDupes1 = xOutValue
End Function

3. ثم احفظ وأغلق هذا الرمز ، عد إلى ورقة العمل ، وأدخل هذه الصيغة = تمت إزالتها 1 (A2) (A2 هي خلية البيانات التي تريد إزالة التكرارات منها) في خلية فارغة إلى جانب بياناتك ، انظر الصورة:

doc-remove-Duplicate-character-1

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

doc-remove-Duplicate-character-1


السهم الأزرق الحق فقاعة قم بإزالة الكلمات المكررة المفصولة بعلامات ترقيم بوظيفة محددة بواسطة المستخدم

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

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

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

كود فبا: أزل الكلمات المكررة المفصولة بعلامات ترقيم للخلية

Function RemoveDupes2(txt As String, Optional delim As String = " ") As String
    Dim x
    'Updateby Extendoffice
    With CreateObject("Scripting.Dictionary")
        .CompareMode = vbTextCompare
        For Each x In Split(txt, delim)
            If Trim(x) <> "" And Not .exists(Trim(x)) Then .Add Trim(x), Nothing
        Next
        If .Count > 0 Then RemoveDupes2 = Join(.keys, delim)
    End With
End Function

3. ثم احفظ هذا الرمز وأغلقه ، ثم عد إلى ورقة العمل ، وأدخل هذه الصيغة = RemoveDupes2 (A2، "،") في خلية فارغة بجوار بياناتك ، انظر لقطة الشاشة:

doc-remove-Duplicate-character-1

4. ثم انسخ الصيغة إلى الخلايا المطلوبة ، وستتم إزالة جميع الكلمات المكررة من كل خلية. انظر لقطة الشاشة:

doc-remove-Duplicate-character-1

ملاحظة: في الصيغة أعلاه ، A2 تشير إلى الخلية التي تريد استخدامها ، وترمز الفاصلة (،) إلى علامة الترقيم التي تفصل بين الكلمات في الخلية ، ويمكنك تغييرها إلى أي علامات ترقيم أخرى حسب حاجتك.


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

Kutools for Excel يحل معظم مشاكلك ويزيد إنتاجيتك بنسبة 80٪

  • إعادة استخدام: أدخل بسرعة الصيغ المعقدة والرسوم البيانية وأي شيء استخدمته من قبل ؛ تشفير الخلايا مع كلمة السر إنشاء قائمة بريدية وإرسال رسائل البريد الإلكتروني ...
  • سوبر فورميولا بار (بسهولة تحرير أسطر متعددة من النص والصيغة) ؛ تخطيط القراءة (قراءة وتحرير أعداد كبيرة من الخلايا بسهولة) ؛ لصق في النطاق المصفى
  • دمج الخلايا / الصفوف / الأعمدة دون فقدان البيانات ؛ تقسيم محتوى الخلايا ؛ ادمج الصفوف / الأعمدة المكررة... منع تكرار الخلايا؛ قارن النطاقات
  • حدد مكرر أو فريد صفوف حدد صفوف فارغة (جميع الخلايا فارغة) ؛ البحث الفائق والبحث الغامض في العديد من المصنفات. تحديد عشوائي ...
  • نسخة طبق الأصل خلايا متعددة بدون تغيير مرجع الصيغة ؛ إنشاء المراجع تلقائيًا إلى أوراق متعددة أدخل الرموز النقطية، مربعات الاختيار والمزيد ...
  • استخراج النص، إضافة نص ، إزالة حسب الموضع ، إزالة الفضاء؛ إنشاء وطباعة المجاميع الفرعية لترحيل الصفحات ؛ التحويل بين محتوى الخلايا والتعليقات
  • سوبر تصفية (حفظ وتطبيق مخططات التصفية على أوراق أخرى) ؛ فرز متقدم حسب الشهر / الأسبوع / اليوم ، التكرار والمزيد ؛ مرشح خاص بواسطة bold، italic ...
  • اجمع بين المصنفات وأوراق العمل؛ دمج الجداول على أساس الأعمدة الرئيسية ؛ تقسيم البيانات إلى أوراق متعددة; تحويل دفعة xls و xlsx و PDF
  • أكثر من 300 ميزة قوية. يدعم Office / Excel 2007-2019 و 365. يدعم جميع اللغات. سهولة النشر في مؤسستك أو مؤسستك. الميزات الكاملة نسخة تجريبية مجانية لمدة 30 يومًا. ضمان استرداد الأموال لمدة 60 يومًا.
علامة تبويب kte 201905

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

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
أوفيسيتاب القاع
فرز التعليقات حسب
التعليقات (66)
لا يوجد تقييم. كن أول من يقيم!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لا تزال مفلسة ... لا تظهر أي شيء في الواقع. ها هي بياناتي الخلوية: 27000 ، أساسي ، منتجات ، مواد ، من ، خشب ، حجر ، ترابي ، خام ، مواد ، 27100 ، أساسي ، غابة ، منتجات ، عام ، 27110 ، أساسي ، غابة ، منتجات ، منشرة ، منتجات ، 27120 ، أساسي ، الغابات، المنتجات، الخشب، اللب، 27200، الزجاج من الواضح أن بعض المغفلين هناك. يترك الخلية فارغة. أفكار؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لا تهتم ، أنا غبي. نظرًا لأنني أردت سحب الكلمات فقط ، فقد قمت بإعادة تسمية الوحدة النمطية RemoveDupes ، لكنني لم أغير RemoveDupes لاحقًا في الكود. ثابت ، صفع النفس بالمطرقة ....
تم تصغير هذا التعليق بواسطة المشرف على الموقع
وقمت بدمج RemoveDupes مع ConCat (خير VBA ، وليس CON (I-SUCK-BECAUSE-I'M-MICROSOFT) CATENATE) في هذا: = RemoveDupes (ConCat ("،"، G495: G502)، "،") لذلك لقد سحبت زنزانتي ثم مسحت كل المغفلين. نشكرك على RemoveDupes ، إليك ConCat: Function ConCat (المحدد كمتغير ، ParamArray CellRanges () كمتغير) كخلية خافتة سلسلة كنطاق ، منطقة كمتغير إذا IsMissing (محدد) ثم المحدد = "" لكل منطقة في CellRanges If TypeName ( Area) = "Range" ثم لكل خلية في منطقة If Len (Cell.Value) ثم ConCat = ConCat & Delimiter & Cell.Value Next Else ConCat = ConCat & Delimiter & Area End If Next ConCat = Mid (ConCat، Len (Delimiter ) + 1) وظيفة النهاية
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لقد جربت الحل الخاص بك "إزالة الكلمات المكررة المفصولة بعلامات ترقيم بوظيفة محددة بواسطة المستخدم" وهو يعمل بشكل رائع مع عدة كلمات في خلية ولكنه لا يحل مشكلتي تمامًا. لدي خلية واحدة تحتوي على قيم متعددة وأريد المقارنة بخلية أخرى ذات قيم متعددة ، ثم اجعلها تزيل التكرارات الموجودة بين الخليتين. هل هناك طريقة للقيام بذلك؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
نفس الشيء هنا الرجاء المساعدة
تم تصغير هذا التعليق بواسطة المشرف على الموقع
هل هذا الخيط لا يزال حيا؟ سأكون ممتنًا جدًا لبعض الأفكار مع وظيفة VBA هذه .. أسئلتي تتعلق بالشفرة ، حيث إذا كنت سأحتاج على الإطلاق إلى توجيهها للعثور على علامات الترقيم المحددة كمحدد .. إذا كنت سأستخدم "@" كـ علامات الترقيم؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
نصيحتك رائعة! لقد قمت بفرز 58,400 سجل في حوالي دقيقتين وحفظت أسبوعًا واحدًا (أو أكثر) من العمل. كانت النسخ المكررة أصعب قليلاً في تحويل هذا المثال "فانوس الوقود السائل V&O Liquid Fuel Lantern 2-13 / 1in" إلى "V&O Liquid Fuel Lantern 2-13 / 1in blk" شكرًا لك.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبًا ، من فضلك ، أحتاج إلى مساعدتك ، لقد جربت الكود الخاص بك لكنه لم يعمل ، ربما لأن لدي أرقامًا لدي أرقام هواتف مكررة مفصولة بفاصلات ، يرجى إخباري بما يجب فعله شكرًا
تم تصغير هذا التعليق بواسطة المشرف على الموقع
نفس الشيء هنا الرجاء المساعدة
تم تصغير هذا التعليق بواسطة المشرف على الموقع
رائعة شكرا لك! شكرا! شكرا!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
رائع شكرا لك!.....
تم تصغير هذا التعليق بواسطة المشرف على الموقع
هاي يا صاح أحتاج مساعدتك. ماذا أفعل إذا كنت أرغب في استخراج النسخة المكررة؟ في A1 (asdfghjiklkk) إذن k هو حرف مكرر أريد A2 (k) ماذا أفعل؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
هل من الممكن تعديل الوظيفة إذا كانت هناك كلمة معينة أرغب في تكرارها بينما لا يتم تكرار البقية؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
فقط أود أن أحفظ شكراً جزيلاً لك على هذا الدليل ، لقد وفر لي الكثير من العمل! :)
تم تصغير هذا التعليق بواسطة المشرف على الموقع
هذا مفيد جدا . لقد جربته وهو يعمل معي كما هو مستثنى. ممتاز !!!!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
هذا حل رائع وبسيط للعثور على عبارات مكررة داخل خلية واحدة ، أسهل بكثير من بعض حلول الماكرو الطويلة التي وجدتها أثناء البحث عن إجابة لمشكلتي ، شكرًا لك!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
شكرًا على هذا الرمز - لقد وفر لي الكثير من الوقت.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لدي بيانات مثل 1. تظهر أدناه في خلية واحدة وأريد الإعجاب 2. 1. ZERPUR، MAHENDRAGARH، HARYANA-123029، 30771237، 8813073653، ZERPUR (16)، MAHENDRAGARH، HARYANA-123029، 30771237، 8813073653 أحتاج هذا مثل: - ZERPUR، MAHENDRAGARH، HARYANA-123029، 30771237، 8813073653 شكرًا وتحياتي Hanuman Singh 9034509168
تم تصغير هذا التعليق بواسطة المشرف على الموقع
علمني كيف بحاجة لمعرفة ذلك أيضا ..
تم تصغير هذا التعليق بواسطة المشرف على الموقع
هل يمكننا معرفة موضع الحرف الأول الصغير


الامتحان - RAMSHsJHSAhsjDDD ------ أريد أن أعرف موضع الحرف الأول الصغير بالصيغة = s
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا يا محربان
يمكنك تطبيق صيغة الصفيف التالية للحصول على موضع أول حرف صغير:
=MATCH(1,IF(ABS(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))-109.5)<=12.5,1),0)
يرجى تذكر الضغط على Ctrl + Shift + Enter معًا.


أتمنى أن يساعدك ، شكرا لك!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا سكاييانغ

انها تعمل بشكل صحيح .....
في الواقع أردت نفس الشيء ..

شكرا جزيلا !!


مهربان سينغ بال
تم تصغير هذا التعليق بواسطة المشرف على الموقع
كيفية إزالة تكرار السلسلة المتطابقة ... هل يمكن أن تخبرني من فضلك


التحيات،
كيران
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا كيران
هل يمكنك إعطاء مثال لمشكلتك؟ أو يمكنك إدراج صورة مرفق.
نتطلع إلى ردك!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
شكرا جزيلا ، إنها تساعدني أكثر. لكني أريد بعضًا أكثر تحديدًا لمجموعة البيانات الخاصة بي.
لدي بيانات عمودين. الهوية والمعلومات. في عمود المعلومات ، يتم تكرار معرف المشروع لكل خلية مثل "Kant- و Udp- و Akr- إلخ". بالنسبة لمجموعة البيانات الخاصة بي ، يكون رقم تعريف المشروع أكثر من 15 وقد تم إصلاحه. لذلك أريد حذف المعرّف المتكرر من الخلية مع الاحتفاظ بالأول.
الامتحان: Kant-526 (0.0287) ، Kant-527 (0.0113) ، Kant-528 (0.0262) /// Kant-526 (0.0287) ، 527 (0.0113) ، 528 (0.0262) ،
Kant-543 (0.0685) ، Kant-544 (0.0685) ، Udp-097 (0.0141) /// Kant-543 (0.0685) ، 544 (0.0685) ، Udp-097 (0.0141)

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

= الاستبدال (الاستبدال ("Kant -"، ""، 2)، ("Kant -"، ""، 2)
هنا ، الأولى والثانية من أجل Kant الثاني - والاستبدال التالي لكل Kant - إزالة فقط أضف ("Kant -" ، "" ، 1) إضافي. انها تعمل بالنسبة لي. لكني أفضل VBA جيد.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
شكرا على الكود.

هل تستطيع مساعدتي رجاء؟ أنا أستخدم وظيفة الماكرو لإزالة الكلمات المفصولة بعلامات ترقيم للخلية ، لكن بياناتي ليست كلمات هي في الواقع عبارات. مثل بدلاً من "KTE، KTO، KTW، KTO" هو في الواقع أوصاف مختصرة مثل "إعداد فاتورة ، مراجعة رسائل البريد الإلكتروني الخاصة بي ، تحديث العقود ، مراجعة رسائل البريد الإلكتروني الخاصة بي".

هل سيكون من الممكن تحديث VBA لإزالة العبارات المكررة بدلاً من الكلمات؟

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

الوظيفة RemoveDuplicateValue (xStr As String ، xDelim As String) كسلسلة
خافت xValue
إذا (Len (xDelim)> 0) و (Len (Trim (xStr))> 0) ثم
باستخدام CreateObject ("Scripting.D Dictionary")
لكل xValue In Split (xStr، xDelim)
إذا كان Trim (xValue) <> "" And Not. موجودًا (Trim (xValue)) ثم أضف Trim (xValue) ، فلا شيء
التالى
إذا كان .Count> 0 ثم RemoveDuplicateValue = ضم (.keys، xDelim)
انتهت ب
آخر
RemoveDuplicateValue = xStr
إنهاء حالة
نهاية وظيفة

ثم قم بتطبيق هذه الصيغة: = RemoveDuplicateValue (A2، "،") ، قم بتغيير الفاصل ، إلى فاصل خاص بك.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا سكاييانغ ،



آمل أن أحصل على بعض المساعدة بشأن الخلية التالية:

PR-PUERTO RICO ؛ الولايات المتحدة والولايات المتحدة؛ الولايات المتحدة والولايات المتحدة

أحتاج إلى إزالة نسخة US-UNITED STATES المكررة لأن أداة التحميل الخاصة بي لن تسمح بالتكرارات.



لقد استخدمت VBA أعلاه واستبدلت محدد الصيغة بـ "؛". هل تسبب الواصلة في حدوث مشكلة؟ تقوم بإرجاع #NAME؟ كلما قمت بتشغيل الصيغة. أنا جديد على وحدات الماكرو / VBA لكنني تأكدت من حفظ الملف كملف Macro Enabled. حاولت حقًا متابعة هؤلاء إلى T.


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

التيار: PR-PUERTO RICO ؛ الولايات المتحدة والولايات المتحدة؛ الولايات المتحدة والولايات المتحدة
مطلوب: PR-PUERTO RICO ؛ الولايات المتحدة والولايات المتحدة

أتمنى أن يكون هذا منطقيًا وأشكرك كثيرًا على الرد السريع.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا مايكل،
تحتاج فقط إلى تطبيق الكود أدناه ، ثم استخدام هذه الصيغة: = RemoveDuplicateValue (A2، "؛"). من فضلك حاول ، آمل أن يساعدك!

الوظيفة RemoveDuplicateValue (xStr As String ، xDelim As String) كسلسلة
خافت xValue
إذا (Len (xDelim)> 0) و (Len (Trim (xStr))> 0) ثم
باستخدام CreateObject ("Scripting.D Dictionary")
لكل xValue In Split (xStr، xDelim)
إذا كان Trim (xValue) <> "" And Not. موجودًا (Trim (xValue)) ثم أضف Trim (xValue) ، فلا شيء
التالى
إذا كان .Count> 0 ثم RemoveDuplicateValue = ضم (.keys، xDelim)
انتهت ب
آخر
RemoveDuplicateValue = xStr
إنهاء حالة
نهاية وظيفة
تم تصغير هذا التعليق بواسطة المشرف على الموقع
شكرا جزيلا. كان ردك مرحبًا به أكثر من فنجان قهوتي!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبًا ، هذا مفيد حقًا
لكني أريد إزالة الكلمات بأكملها بعد "NO TO:"

على سبيل المثال: NO TO: [C11bx1]

NO TO: [C11bx3] هكذا
لا توجد تعليقات منشورة هنا حتى الآن
عرض المزيد
اترك تعليقاتك
النشر كضيف
×
قيم المنشور:
0   الشخصيات
المواقع المقترحة