Cookies helpen ons onze services te leveren. Door gebruik te maken van onze diensten, gaat u akkoord met ons gebruik van cookies.
Tip: andere talen zijn Google-Vertaald. Je kunt het English versie van deze link.
Log in
x
or
x
x
Registreren
x

or

Hoe extraheer je tekst op basis van letterkleur uit een cel in Excel?

Als u een gegevenslijst met een rode tekst in elke cel in Excel hebt, zoals weergegeven onder screenshot, en weet u hoe u alleen de rode tekst moet extraheren? Nu zal ik een snelle manier introduceren om de puzzel op te lossen die tekst op basis van de letterkleur uit een cel in Excel extraheert.

doc-extract-text-color-1

Extractie van tekst op basis van letterkleur uit elke cel


pijl blauwe rechterbel Extractie van tekst op basis van letterkleur uit elke cel


In Excel kunt u alleen de gedefinieerde functie gebruiken om de tekst te extraheren op basis van de kleur van het lettertype.

1. druk op Alt + F11 toetsen om het Microsoft Visual Basic for Applications-venster te openen.

2. klikken bijvoegsel > module en kopieer de volg VBA-code naar het uitgeklapte venster.

VBA: extraheer tekst op basis van de letterkleur

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. Sla vervolgens op en sluit het dialoogvenster en selecteer een lege cel naast de gegevenslijst, typ deze formule = GetColorText (A1) (A1 geeft de cel aan waarvan u tekst wilt extraheren), druk op invoeren toets om de benodigde tekst te krijgen en sleep vervolgens de knop voor automatisch aanvullen om de formule in het gewenste bereik te vullen.

Nu kunt u zien dat alle rode tekst is uitgepakt.

doc-extract-text-color-2

Tip: Als u in de bovenstaande VBA-code de zwarte tekst uit cellen moet extraheren, kunt u de kleurnaam wijzigen Kleur = vbRed naar Color = vbBlack.


Relatieve artikelen:



Aanbevolen productiviteitstools

Office Tab

gouden ster1 Breng handige tabbladen naar Excel en andere Office-software, net zoals Chrome, Firefox en nieuwe Internet Explorer.

Kutools for Excel

gouden ster1 Verbazingwekkend! Verhoog uw productiviteit in 5 minuten. Heb geen speciale vaardigheden nodig, bespaar elke dag twee uur!

gouden ster1 300 Nieuwe functies voor Excel, maak Excel veel gemakkelijk en krachtig:

  • Cel / rijen / kolommen samenvoegen zonder gegevens te verliezen.
  • Combineer en consolideer meerdere bladen en werkmappen.
  • Bereiken vergelijken, meerdere bereiken kopiëren, tekst converteren naar datum, eenheid en valuta omrekenen.
  • Count by Colors, paging-subtotalen, geavanceerde sortering en superfilter,
  • Meer Selecteren / Invoegen / Wissen / Tekst / Formaat / Link / Commentaar / Werkmappen / Werkbladen Hulpmiddelen ...

Schermopname van Kutools voor Excel

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