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

كيفية استخراج النص بناءً على لون الخط من خلية في Excel؟

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

doc-extract-text-color-1

استخراج النص بناءً على لون الخط من كل خلية

علامة تبويب Office تمكن من التحرير والتصفح المبوب في المكتب ، واجعل عملك أسهل بكثير ...
Kutools for Excel يحل معظم مشاكلك ويزيد إنتاجيتك بنسبة 80٪
  • إعادة استخدام أي شيء: أضف الصيغ والمخططات الأكثر استخدامًا أو تعقيدًا وأي شيء آخر إلى مفضلاتك ، وأعد استخدامها بسرعة في المستقبل.
  • أكثر من 20 ميزة نصية: استخراج رقم من سلسلة نصية ؛ استخراج أو إزالة جزء من النصوص ؛ تحويل الأرقام والعملات إلى الكلمات الإنجليزية.
  • أدوات الدمج: مصنفات وأوراق متعددة في واحد ؛ دمج خلايا / صفوف / أعمدة متعددة دون فقد البيانات ؛ دمج الصفوف المكررة والمجموع.
  • أدوات الانقسام: تقسيم البيانات إلى أوراق متعددة بناءً على القيمة ؛ مصنف واحد لملفات Excel أو PDF أو CSV متعددة ؛ عمود واحد إلى أعمدة متعددة.
  • لصق التخطي صفوف مخفية / مصفاة العد والمجموع حسب لون الخلفية؛ إرسال رسائل بريد إلكتروني مخصصة إلى مستلمين متعددين بشكل مجمع.
  • مرشح سوبر: إنشاء مخططات تصفية متقدمة وتطبيقها على أي أوراق ؛ تصنيف حسب: حسب الأسبوع واليوم والتكرار والمزيد ؛ تصفية بواسطة bold، formulas، comment ...
  • أكثر من 300 ميزة قوية ؛ يعمل مع Office 2007-2021 و 365 ؛ يدعم جميع اللغات ؛ سهولة النشر في مؤسستك أو مؤسستك.

السهم الأزرق الحق فقاعة استخراج النص بناءً على لون الخط من كل خلية

في Excel ، يمكنك فقط استخدام الوظيفة المحددة لاستخراج النص بناءً على لون الخط.

1. صحافة ALT + F11 مفاتيح معًا لفتح نافذة Microsoft Visual Basic for Applications.

2. انقر إدراج > وحدة وانسخ رمز VBA التالي إلى النافذة المنبثقة.

VBA: استخراج النص بناءً على لون الخط

Function GetColorText(pRange As Range) As String
'UpdatebyExtendoffice20220621
Dim xOut As String
Dim xValue As String
Dim i As Long
Dim TextColor
TextColor = RGB(255, 0, 0) 'colorindex RGB
xValue = pRange.Text
For i = 1 To VBA.Len(xValue)
  If pRange.Characters(i, 1).Font.Color = TextColor Then
  xOut = xOut & VBA.Mid(xValue, i, 1)
  End If
Next
GetColorText = xOut
End Function

3. ثم احفظ وأغلق مربع الحوار ، وحدد خلية فارغة بجوار قائمة البيانات ، واكتب هذه الصيغة = GetColorText (A1) (يشير A1 إلى الخلية التي تريد استخراج النص منها) ، اضغط أدخل مفتاح للحصول على النص المطلوب ، ثم اسحب مقبض الملء التلقائي لملء الصيغة إلى النطاق الذي تريده.

الآن يمكنك رؤية كل النص الأحمر المستخرج.

doc-extract-text-color-2

معلومه- سرية: في كود فبا أعلاه ، يمكنك تغيير لون rgb في هذا البرنامج النصي TextColor = RGB (255 ، 0 ، 0) للآخرين لتلبية حاجتك.


المقالات النسبية:


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

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

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

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

  • تمكين التحرير والقراءة المبوبة في Word و Excel و PowerPointوالناشر والوصول و Visio والمشروع.
  • فتح وإنشاء مستندات متعددة في علامات تبويب جديدة من نفس النافذة ، بدلاً من النوافذ الجديدة.
  • يزيد من إنتاجيتك بنسبة 50٪ ، ويقلل مئات النقرات بالماوس كل يوم!
أوفيسيتاب القاع
فرز التعليقات حسب
التعليقات (14)
لا يوجد تقييم. كن أول من يقيم!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبًا ، عندما حاولت استخدام vbBlue ، لم يعمل. ساعدنى من فضلك؟ شكرًا!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
امنح لون الخط إلى اللون الأزرق exct.
نظرًا لوجود العديد من أنواع اللون الأزرق "أزرق فاتح ، أزرق سماوي ، أزرق غامق"
vba تطابق اللون exct فقط. ؟؟؟؟؟؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
يعمل الكود جيدًا إذا كانت السلاسل الحمراء مستمرة. في حالة فصلهم في الخلية المصدر ، يتم لصقهم ببعضهم البعض في خلية الإخراج. أعني أنه لا توجد مساحة في الإخراج إذا كانت السلاسل النصية الحمراء بعيدة عن بعضها البعض. هل يمكنك تقديم حل لهذا من فضلك؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبا، شكرا على النصيحة. يعمل بشكل رائع مع الأحمر والأسود.
ماذا لو أردت تحليل "أرجواني"؟ تغييره لا يعمل vbPurple.
شكر
تم تصغير هذا التعليق بواسطة المشرف على الموقع
Buonasera ، grazie mille un'ottima funzione. Però ho un problema، quando val nel foglio ed inserisco es. = GetColorText (A1) mi restituisce il valore giusto però come riavvio il file mi da errore #VALORE !، se poi clicco 2 volte sopra mi da il valore corretto e così via. أجرة تشي بوسو؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
dimenticavo io ho Excel 2010
تم تصغير هذا التعليق بواسطة المشرف على الموقع
شكرا ، كود مثير جدا للاهتمام.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
يعمل الكود جيدًا إذا كانت السلاسل الحمراء مستمرة. في حالة فصلهم في الخلية المصدر ، يتم لصقهم ببعضهم البعض في خلية الإخراج. أعني أنه لا توجد مساحة في الإخراج إذا كانت السلاسل النصية الحمراء بعيدة عن بعضها البعض. هل يمكنك تقديم حل لهذا من فضلك؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
جرب هذا ، يجب أن يعمل
الدالة GetColorText (نطاق النطاق كنطاق) كسلسلة
تم تحديثه إلى عدة مرات
خافت xOut كسلسلة
خافت xValue كسلسلة
خافت أنا طويلة
كان ديم أحمر كمنطقي
xValue = pRange.Text

بالنسبة إلى i = 1 إلى VBA.Len (xValue)

إذا كانت pRange.Characters (i، 1) .Font.Color = vbRed ثم
xOut = xOut & VBA.Mid (xValue، i، 1)
wasRed = صحيح
ElseIf wasRed = صحيح إذن
wasRed = خطأ
xOut = xOut & "؛"
إنهاء حالة

التالى

GetColorText = xOut
نهاية وظيفة

تم تصغير هذا التعليق بواسطة المشرف على الموقع
شكرا جزيلا لقد عملت بشكل جيد أنت منقذ تيم :-) 
تم تصغير هذا التعليق بواسطة المشرف على الموقع
ما زلت غير قادر على استخراج النص الأزرق (# 1166BB). هل هناك طريقة لاستخدام Hex: # 1166BB للحصول على نص ملون أحتاجه؟
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحبًا ، روبرت إي بيريز ، لقد قمت بتحديث رمز VBA ، وهو الآن يدعم الحصول على نص ملون بواسطة كود RGB. يمكنك محاولة الرمز مرة أخرى.
تم تصغير هذا التعليق بواسطة المشرف على الموقع
لدي نص معين في خلية مفصولة بفاصلة ولديها لون لكل نص. أثناء استخدام Delimiter funtion ، لا يمكنني الاحتفاظ بلون خط النص. نقدر مساعدتك!
تم تصغير هذا التعليق بواسطة المشرف على الموقع
مرحباً جدججد ، أنا لا أفهم سؤالك بوضوح. هل تريد استخراج النص المحدد من الخلايا والحفاظ على لون الخط كما هو موضح أدناه؟
https://www.extendoffice.com/images/stories/comments/sun-comment/split_and_keep_font_color.png
أو تقسيم الخلايا والاحتفاظ بكل لون لخط النص؟
https://www.extendoffice.com/images/stories/comments/sun-comment/split_and_keep_font_color-2.png
لا توجد تعليقات منشورة هنا حتى الآن

تواصل معنا

حقوق التأليف والنشر © 2009 - شبكة الاتصالات العالمية.extendoffice.com. | كل الحقوق محفوظة. مشغل بواسطة ExtendOffice. | | خريطة الموقع
Microsoft وشعار Office هما علامتان تجاريتان أو علامتان تجاريتان مسجلتان لشركة Microsoft Corporation في الولايات المتحدة و / أو دول أخرى.
محمي بواسطة Sectigo SSL