کوکی ها به ما کمک خدمات ما ارائه کرده است. با استفاده از خدمات ما، شما را به استفاده ما از کوکی ها است.
نکته: زبانهای دیگر گوگل ترجمه شده اند. شما می توانید از English نسخه این لینک
ورود
x
or
x
x
ثبت نام
x

or

چگونه می توان متن را بر اساس رنگ فونت از یک سلول در اکسل استخراج کرد؟

اگر فهرست داده ای با برخی از متن قرمز در هر سلول در اکسل به صورت زیر نمایش داده شده است، و آیا می دانید چگونه فقط متن قرمز را استخراج کنید؟ در حال حاضر من یک راه سریع برای حل پازل است که استخراج متن بر اساس رنگ فونت از یک سلول در اکسل معرفی کنید.

doc-extract-text-color-1

استخراج متن بر اساس رنگ فونت از هر سلول


فلش آبی راست حباب استخراج متن بر اساس رنگ فونت از هر سلول


در اکسل، فقط می توانید از تابع تعریف شده برای استخراج متن بر اساس رنگ فونت استفاده کنید.

1 مطبوعات Alt + F11 کلیدهای با هم برای باز کردن پنجره مایکروسافت ویژوال بیسیک برای برنامه.

2. کلیک قرار دادن > ماژول ها و کد VBA را به پنجره ظاهر شده کپی کنید.

VBA: استخراج متن بر اساس رنگ فونت

Function GetColorText(pRange As Range) As String
	'Updateby20141105
	Dim xOut As String
	Dim xValue As String
	Dim i As Long
	xValue = pRange.Text

	For i = 1 To VBA.Len(xValue)

		If pRange.Characters(i, 1).Font.Color = vbRed Then
			xOut = xOut & VBA.Mid(xValue, i, 1)
		End If

	Next

	GetColorText = xOut
End Function

3 سپس محاوره را ذخیره و بستن کنید و یک سلول خالی در کنار لیست داده را انتخاب کنید، این فرمول را تایپ کنید = GetColorText (A1) (A1 نشان دهنده سلولی است که می خواهید متن را از آن استخراج کنید)، را فشار دهید وارد برای دریافت متن مورد نیاز کلید را انتخاب کنید، سپس برای تکمیل فرمول به محدوده ای که می خواهید، دستورالعمل تکمیل خودکار را بکشید.

حالا شما می توانید تمام متن قرمز استخراج کنید.

doc-extract-text-color-2

نوک: در کد بالا VBA، اگر شما نیاز به استخراج متن سیاه از سلول، شما می توانید نام رنگ را تغییر دهید رنگ = vbRed به رنگ = vbBlack.


مقالات نسبی:



ابزارهای توصیه شده برای بهره وری

دفتر تب

gold star1 زبانه های مفید برای اکسل و دیگر نرم افزار Office، درست مانند Chrome، Firefox و اینترنت اکسپلورر جدید.

Kutools برای اکسل

gold star1 حیرت آور! بهره وری خود را در دقیقه 5 افزایش دهید. به مهارت های ویژه نیاز نداشته باشید، صرفه جویی در هر ساعت دو ساعت!

gold star1 ویژگی های جدید 300 برای اکسل، اکسل بسیار آسان و قدرتمند:

  • ادغام سلول / ردیف / ستون بدون از دست دادن داده ها.
  • ترکیب و ادغام چندین ورق و کارنامه.
  • مقایسه مقادیر، روندهای چندگانه کپی، تبدیل متن به تاریخ، تبدیل واحد و ارز.
  • شمارش توسط رنگ ها، کلیدهای پیمایش، مرتب سازی پیشرفته و سوپر فیلتر،
  • بیشتر انتخاب / قرار دادن / حذف / متن / فرمت / لینک / نظر / کتاب کار / ابزار برگه ها ...

شات Screen Kutools برای اکسل

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    prudwi · 2 months ago
    The code works well if the red strings are continuous. In case they are separated in the source cell, they are glued to each other in output cell. I mean there is no space in the output if the red text strings are away from each other. Can you please provide a solution for this?
  • To post as a guest, your comment is unpublished.
    Kazam Raza · 2 months ago
    thanks, very interesting code.
  • To post as a guest, your comment is unpublished.
    Roberto · 3 months ago
    dimenticavo io ho Excel 2010
  • To post as a guest, your comment is unpublished.
    Roberto · 3 months ago
    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. che posso fare?
  • To post as a guest, your comment is unpublished.
    JM · 1 years ago
    Hey, Thanks for the Tip. Works great with Red and Black.
    What if I want to parse "Purple"? changing it vbPurple does not work.
    Thanks