Kolačići nam pomoći isporučiti naše usluge. Korištenjem naših usluga, pristajete na naše korištenje kolačića.
Savjet: drugi jezici su prevedeni na Google. Možete posjetiti English verzija ove veze.
Prijaviti se
x
or
x
x
Registrirajte se
x

or

Kako izvući tekst na temelju boje fonta iz ćelije u programu Excel?

Ako imate popis s nekim crvenim tekstom u svakoj ćeliji u programu Excel, kao što je prikazano na slici u nastavku, i znate li samo izvući crveni tekst? Sada ću uvesti brz način rješavanja zagonetke koja izvlači tekst na temelju boje fonta iz ćelije u programu Excel.

doc-ekstrakt tekst-kolor-1

Izvadite tekst na temelju boje fonta iz svake ćelije


strelica plava desna mjehurić Izvadite tekst na temelju boje fonta iz svake ćelije


U programu Excel možete koristiti definiranu funkciju samo za izdvajanje teksta na temelju boje fonta.

1. tisak Alt + F11 tipke zajedno za otvaranje prozora programa Microsoft Visual Basic for Applications.

2. klik umetak > Moduli i kopirajte slijedni VBA kod na popped out prozor.

VBA: Ekstrakt teksta na temelju boje fonta

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. Zatim spremite i zatvorite dijalog te odaberite praznu ćeliju pokraj popisa podataka, upišite ovu formulu = GetColorText (A1) (A1 označava ćeliju koju želite izvaditi iz teksta), pritisnite ući ključ za dobivanje potrebnog teksta, a zatim povucite ručicu automatskog popunjavanja da biste ispunili formulu željenom rasponu.

Sada možete vidjeti sve crvene tekstove izvađene.

doc-ekstrakt tekst-kolor-2

vrsta: U gornjem VBA kodu, ako morate izvući crni tekst iz ćelija, možete promijeniti naziv boje Boja = vbRed do Color = vbBlack.


Relativni članci:



Preporučeni alati za produktivnost

Kartica sustava Office

zlato star1 Donesite praktične kartice u program Excel i drugi Office, kao što su Chrome, Firefox i novi Internet Explorer.

Kutools za Excel

zlato star1 Nevjerojatno! Povećajte produktivnost u 5 minuta. Ne trebaju nikakve posebne vještine, osim dva sata svaki dan!

zlato star1 300 nove značajke za Excel, izraditi Excel mnogo jednostavan i snažan:

  • Spoji ćeliju / retke / stupce bez gubitka podataka.
  • Kombinirajte i konsolidirajte više tablica i radnih knjiga.
  • Usporedba raspona, kopiranje više raspona, pretvaranje teksta na datum, jedinica i pretvorba valuta.
  • Count po bojama, Paging Subtotal, Advanced Sort i Super Filter,
  • Više Odabir / umetanje / brisanje / tekst / oblikovanje / veza / komentar / radne knjige / alati za radne listove ...

Screen shot tvrtke Kutools za 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