Cookies membantu kami menyampaikan perkhidmatan kami. Dengan menggunakan perkhidmatan kami, anda bersetuju dengan penggunaan cookies.
Petua: Bahasa lain diterjemahkan Google. Anda boleh melawat English versi pautan ini.
Log masuk
x
or
x
x
Daftar
x

or

Bagaimana cara mengekstrak teks berdasarkan warna fon dari sel dalam Excel?

Sekiranya anda mempunyai senarai data dengan beberapa teks merah dalam setiap sel dalam Excel seperti yang ditunjukkan sebagai tangkapan skrin di bawah, dan adakah anda tahu bagaimana untuk mengekstrak teks merah sahaja? Sekarang saya akan memperkenalkan cara cepat untuk menyelesaikan teka-teki yang mengekstrak teks berdasarkan warna fon dari sel dalam Excel.

doc-extract-text-color-1

Ekstrak teks berdasarkan warna fon dari setiap sel


anak panah gelembung kanan biru Ekstrak teks berdasarkan warna fon dari setiap sel


Dalam Excel, anda hanya boleh menggunakan fungsi yang ditetapkan untuk mengekstrak teks berdasarkan warna fon.

1. Akhbar Alt + F11 kunci bersama untuk membuka tetingkap Microsoft Visual Basic untuk Aplikasi.

2. klik Memasukkan > Modul dan salin kod VBA mengikut tetingkap keluar.

VBA: Ekstrak teks berdasarkan warna fon

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. Kemudian simpan dan tutup dialog, dan pilih sel kosong di sebelah senarai data, ketik formula ini = GetColorText (A1) (A1 menandakan sel yang anda ingin mengambil teks dari), tekan Masukkan kunci untuk mendapatkan teks yang diperlukan, kemudian seret pegangan autofill untuk mengisi formula pada julat yang anda inginkan.

Sekarang anda dapat melihat semua teks merah diekstrak.

doc-extract-text-color-2

Petua: Dalam kod VBA di atas, jika anda perlu mengekstrak teks hitam dari sel, anda boleh menukar nama warna Warna = vbRed kepada Warna = vbBlack.


Artikel relatif:



Alat Produktiviti yang Disyorkan

Tab Pejabat

bintang emas1 Bawa tab berguna kepada Excel dan perisian Office lain, seperti Chrome, Firefox dan Internet Explorer baru.

Kutools untuk Excel

bintang emas1 Hebat! Tingkatkan produktiviti anda dalam minit 5. Tidak memerlukan kemahiran khas, kecuali dua jam setiap hari!

bintang emas1 Ciri-ciri Baru 300 untuk Excel, Buat Excel Banyak Mudah dan Berkuasa:

  • Merge Cell / Rows / Columns tanpa Kehilangan Data.
  • Menggabungkan dan Menyusun Lembaran Berbilang dan Buku Kerja.
  • Bandingkan Ranges, Salin Pelbagai Rang Undang-Undang, Tukar Teks hingga Tarikh, Penukaran Unit dan Mata Wang.
  • Count by Colors, Subtotal Paging, Urutkan Advanced dan Super Filter,
  • More Select / Insert / Delete / Text / Format / Link / Comment / Workbooks / Worksheets Tools ...

Skrin skrin Kutools untuk 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