Pliki cookie pomagają nam dostarczać nasze usługi. Korzystając z naszych usług, zgadzasz się na nasze pomocą plików cookie.
Wskazówka: inne języki są tłumaczone przez Google. Możesz odwiedzić English wersja tego linku.
Zaloguj Się
x
or
x
x
Zarejestruj
x

or

Jak wyodrębnić tekst na podstawie koloru czcionki z komórki w programie Excel?

Jeśli masz listę danych z czerwonym tekstem w każdej komórce w programie Excel, tak jak pokazano poniżej, i czy wiesz, jak wyodrębnić tylko czerwony tekst? Teraz przedstawię szybki sposób rozwiązania zagadki, która wyodrębnia tekst na podstawie koloru czcionki z komórki w Excelu.

doc-extract-text-color-1

Wyodrębnij tekst na podstawie koloru czcionki z każdej komórki


strzałka niebieska prawa bańka Wyodrębnij tekst na podstawie koloru czcionki z każdej komórki


W programie Excel można używać tylko zdefiniowanej funkcji do wyodrębniania tekstu na podstawie koloru czcionki.

1. naciśnij Alt + F11 klucze razem, aby otworzyć okno Microsoft Visual Basic for Applications.

2. kliknij wstawka > Moduł i skopiuj następujący kod VBA do wysuniętego okna.

VBA: wyodrębnij tekst na podstawie koloru czcionki

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. Następnie zapisz i zamknij okno dialogowe, a następnie wybierz pustą komórkę obok listy danych, wpisz tę formułę = GetColorText (A1) (A1 wskazuje komórkę, z której chcesz wyodrębnić tekst), naciśnij wchodzić aby uzyskać potrzebny tekst, przeciągnij uchwyt autouzupełniania, aby wypełnić formułę do żądanego zakresu.

Teraz możesz wyodrębnić cały czerwony tekst.

doc-extract-text-color-2

Wskazówka: W powyższym kodzie VBA, jeśli chcesz wyodrębnić czarny tekst z komórek, możesz zmienić nazwę koloru Kolor = vbRed do Kolor = vbBlack.


Względne artykuły:



Zalecane narzędzia zwiększające wydajność

Karta Office

złota star1 Przynieś poręczne zakładki do Excela i innego oprogramowania Office, tak jak Chrome, Firefox i nowy Internet Explorer.

Kutools dla programu Excel

złota star1 Niesamowity! Zwiększ swoją produktywność za 5 minut. Nie potrzebujesz żadnych specjalnych umiejętności, oszczędzając dwie godziny dziennie!

złota star1 300 Nowe funkcje programu Excel, uczynienie z Excela bardzo prostym i wydajnym:

  • Scal komórki / wiersze / kolumny bez utraty danych.
  • Łącz i konsoliduj wiele arkuszy i zeszytów.
  • Porównaj zakresy, skopiuj wiele zakresów, przelicz tekst na datę, jednostkę i walutę.
  • Zliczaj według kolorów, podstrony stronicowania, sortowanie zaawansowane i super filtry,
  • Więcej Wybierz / Wstaw / Usuń / Tekst / Format / Link / Komentarz / Skoroszyty / Arkusze zadań Narzędzia ...

Zrzut ekranu z Kutools dla Excela

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