Note: The other languages of the website are Google-translated. Back to English

Як витягти текст на основі кольору шрифту з комірки в Excel?

Якщо у вас є список даних із червоним текстом у кожній комірці Excel, як показано на знімку екрана, і чи знаєте ви, як витягти лише червоний текст? Зараз я представив швидкий спосіб вирішити головоломку, яка витягує текст на основі кольору шрифту з комірки в Excel.

doc-Extract-text-color-1

Витягніть текст на основі кольору шрифту з кожної комірки

Вкладка Office Увімкніть редагування та перегляд вкладок в Office та значно спростіть свою роботу ...
Kutools для Excel вирішує більшість ваших проблем і збільшує продуктивність на 80%
  • Повторне використання будь-чого: Додайте найбільш уживані або складні формули, діаграми та будь-що інше до вибраного та швидко використовуйте їх у майбутньому.
  • Більше 20 функцій тексту: Витяг номера з текстового рядка; Витяг або видалення частини текстів; Перетворення чисел і валют в англійські слова.
  • Злиття інструментів: Кілька робочих книжок та аркушів в одне ціле; Об’єднати кілька клітинок / рядків / стовпців без втрати даних; Об’єднати повторювані рядки та суму.
  • Розділити інструменти: Розділити дані на кілька аркушів на основі значення; Одна робоча книга до декількох файлів Excel, PDF або CSV; Один стовпець на кілька стовпців.
  • Пропустити вставку Приховані / відфільтровані рядки; Граф і сума за кольором тла; Надіслати персоналізовані електронні листи кільком одержувачам масово.
  • Суперфільтр: Створюйте розширені схеми фільтрів і застосовуйте їх до будь-яких аркушів; сортувати за тижнями, днями, періодичністю тощо; фільтр жирним шрифтом, формули, коментар ...
  • Понад 300 потужних функцій; Працює з Office 2007-2021 і 365; Підтримує всі мови; Легке розгортання на вашому підприємстві чи в організації.

стрілка синя права міхур Витягніть текст на основі кольору шрифту з кожної комірки

В Excel ви можете використовувати лише визначену функцію для вилучення тексту на основі кольору шрифту.

1. прес Alt + F11 клавіші разом, щоб відкрити вікно Microsoft Visual Basic for Applications.

2. клацання Insert > Модулі і скопіюйте наступний код VBA у спливаюче вікно.

VBA: Витяг тексту на основі кольору шрифту

Function GetColorText(pRange As Range) As String
'UpdatebyExtendoffice20220621
Dim xOut As String
Dim xValue As String
Dim i As Long
Dim TextColor
TextColor = RGB(255, 0, 0) 'colorindex RGB
xValue = pRange.Text
For i = 1 To VBA.Len(xValue)
  If pRange.Characters(i, 1).Font.Color = TextColor Then
  xOut = xOut & VBA.Mid(xValue, i, 1)
  End If
Next
GetColorText = xOut
End Function

3. Потім збережіть і закрийте діалогове вікно та виберіть пусту комірку поруч зі списком даних, введіть цю формулу = GetColorText (A1) (А1 позначає клітинку, з якої потрібно витягти текст), натисніть вводити , щоб отримати потрібний текст, а потім перетягніть маркер автозаповнення, щоб заповнити формулу до потрібного діапазону.

Тепер ви можете бачити, як витягується весь червоний текст.

doc-Extract-text-color-2

Чайові: У наведеному вище коді VBA ви можете змінити колір rgb у цьому скрипті TextColor = RGB(255, 0, 0) на інші, щоб задовольнити ваші потреби.


Відносні статті:


Найкращі інструменти для підвищення продуктивності офісу

Kutools для Excel вирішує більшість ваших проблем і збільшує продуктивність на 80%

  • Повторне використання: Швидко вставте складні формули, діаграми і все, що ви використовували раніше; Шифрувати комірки з паролем; Створити список розсилки та надсилати електронні листи ...
  • Супер формула бар (легко редагувати кілька рядків тексту та формули); Макет читання (легко читати та редагувати велику кількість комірок); Вставте у відфільтрований діапазон...
  • Об’єднати клітинки / рядки / стовпці без втрати даних; Вміст розділених комірок; Об'єднати повторювані рядки / стовпці... Запобігання дублюючим клітинам; Порівняйте діапазони...
  • Виберіть Повторюваний або Унікальний Рядки; Виберіть Пусті рядки (усі клітинки порожні); Супер знахідка та нечітка знахідка у багатьох робочих зошитах; Випадковий вибір ...
  • Точна копія Кілька клітинок без зміни посилання на формулу; Автоматичне створення посилань на кілька аркушів; Вставте кулі, Прапорці та інше ...
  • Витяг тексту, Додати текст, Видалити за позицією, Видаліть пробіл; Створення та друк проміжних підсумків підкачки; Перетворення вмісту комірок та коментарів...
  • Супер фільтр (зберегти та застосувати схеми фільтрів до інших аркушів); Розширене сортування за місяцем / тижнем / днем, частотою та іншим; Спеціальний фільтр жирним, курсивом ...
  • Поєднайте робочі зошити та робочі аркуші; Об’єднати таблиці на основі ключових стовпців; Розділіть дані на кілька аркушів; Пакетне перетворення xls, xlsx та PDF...
  • Понад 300 потужних функцій. Підтримує Office / Excel 2007-2021 і 365. Підтримує всі мови. Легке розгортання на вашому підприємстві чи в організації. 30-денна безкоштовна пробна версія повних функцій. 60-денна гарантія повернення грошей.
вкладка kte 201905

Вкладка Office забезпечує інтерфейс з вкладками для Office і значно спрощує вашу роботу

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
дно офісної таблиці
Коментарі (14)
Поки немає оцінок. Оцініть першим!
Цей коментар був мінімізований модератором на сайті
Привіт, коли я спробував використовувати vbBlue, це не спрацювало. Допоможіть, будь ласка? Спасибі!
Цей коментар був мінімізований модератором на сайті
Надайте колір шрифту синій колір.
Тому що існує багато типів блакитного кольору "світло-блакитний, небесно-блакитний, темно-синій"
vba відповідає тільки точному кольору.??????
Цей коментар був мінімізований модератором на сайті
Код працює добре, якщо червоні рядки безперервні. Якщо вони розділені у вихідній комірці, вони склеюються один з одним у вихідній комірці. Я маю на увазі, що у виводі немає місця, якщо червоні текстові рядки розташовані далеко один від одного. Чи можете ви надати рішення для цього?
Цей коментар був мінімізований модератором на сайті
Гей, дякую за підказку. Чудово працює з червоним і чорним.
Що робити, якщо я хочу розібрати "Purple"? змінити його vbPurple не працює.
Дякую
Цей коментар був мінімізований модератором на сайті
Buonasera, grazie mille un'ottima funzione. Però ho un problem, quando val nel foglio ed inserisco es. = GetColorText (A1) ми відновлюємо цінність, щоб отримати відповідний файл, щоб помилка #VALORE!, щоб натиснути 2 вольта, щоб отримати відповідне значення та così via. che posso тариф?
Цей коментар був мінімізований модератором на сайті
Розмір іо хо Excel 2010
Цей коментар був мінімізований модератором на сайті
дякую, дуже цікавий код.
Цей коментар був мінімізований модератором на сайті
Код працює добре, якщо червоні рядки безперервні. Якщо вони розділені у вихідній комірці, вони склеюються один з одним у вихідній комірці. Я маю на увазі, що у виводі немає місця, якщо червоні текстові рядки розташовані далеко один від одного. Чи можете ви надати рішення для цього?
Цей коментар був мінімізований модератором на сайті
Спробуйте це, це має спрацювати
Функція GetColorText(pRange As Range) як рядок
'Оновлено, щоб отримати декілька
Dim xOut як рядок
Dim xValue як рядок
Dim i As Long
Dim був червоним як логічний
xValue = pRange.Text

Для i = 1 до VBA.Len(xValue)

Якщо pRange.Characters(i, 1).Font.Color = vbRed Тоді
xOut = xOut & VBA.Mid(xValue, i, 1)
wasRed = Правда
ElseIf wasRed = True Тоді
був червоний = хибний
xOut = xOut & ";"
End If

Далі

GetColorText = xOut
End Function

Цей коментар був мінімізований модератором на сайті
Дуже дякую, це спрацювало чудово. Ти рятівник Тім :-) 
Цей коментар був мінімізований модератором на сайті
Мені досі не вдалося витягти синій текст (#1166BB). Чи є спосіб використати Hex: #1166BB, щоб отримати потрібний колір тексту?
Цей коментар був мінімізований модератором на сайті
Привіт, Роберте Перес, я оновив код VBA, тепер він підтримує отримання кольорового тексту за кодом rgb. Ви можете спробувати код ще раз.
Цей коментар був мінімізований модератором на сайті
У мене є певний текст у комірці, розділений комою та колір для кожного тексту. Під час використання функції «Роздільник» я не можу зберегти колір шрифту тексту. Дякую за вашу допомогу!
Цей коментар був мінімізований модератором на сайті
Привіт, jdhjjd, я не зовсім розумію ваше запитання. Ви бажаєте витягти певний текст із клітинок і зберегти його колір шрифту, як показано на знімку екрана нижче?
https://www.extendoffice.com/images/stories/comments/sun-comment/split_and_keep_font_color.png
чи розділити комірки та зберегти колір шрифту кожного тексту?
https://www.extendoffice.com/images/stories/comments/sun-comment/split_and_keep_font_color-2.png
There are no comments posted here yet
Залишайте свої коментарі
Публікація як гість
×
Оцініть цю публікацію:
0   Персонажі
Рекомендовані місця

Слідуй за нами

Copyright © 2009 - WWW.extendoffice.com. | Всі права захищені. На основі ExtendOffice. | Карта сайту
Microsoft та логотип Office є товарними знаками або зареєстрованими товарними знаками Microsoft Corporation у США та / або інших країнах.
Захищений Sectigo SSL