Я использую vlookup для захвата выбранных ячеек из большой таблицы обычным способом. Тем не менее, текст, который я выбираю, использует цветной шрифт, который передает информацию, которую мне нужно сохранить. Но vlookup не копирует форматирование. Я вижу эти возможности:

а) Использовать vlookup таким образом, чтобы сохранить форматирование - маловероятно

б) Поставьте скобки или какой-либо разделитель вокруг цветного текста, который будет передан с vlookup.

Необходимо определить, где зеленый текст начинается и заканчивается

Меня не волнует цвет как таковой, мне просто нужно сохранить тот факт, что данная подстрока является "особенной". При необходимости я могу перенести текст в Word или другое приложение. Спасибо как всегда.

2 ответа2

0

Единственная функция Excel, которая может различать различные ячейки или фрагменты текста по цвету, - это VBA. Excel не является текстовым редактором или действительно предназначен для сложных отчетов или презентаций - это инструмент анализа. Word или Powerpoint могут выбирать в зависимости от цвета текста, потому что они являются инструментами презентации.

Ваша вторая возможность добавления символов-разделителей - лучшее решение в среде Excel; использование другого приложения может быть лучшим выбором.

Я бы очень хотел, чтобы в Excel не было так много вариантов форматирования, особенно в более поздних версиях - люди ориентированы на визуальное восприятие, поэтому мы продолжаем использовать форматирование там, где на самом деле нужны компьютеры - это четкие разделители.

0

Эта функция делает работу:

Function GetColorText(pRange As range) As String
    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 = RGB(112, 173, 71) Then
            xOut = xOut & VBA.Mid(xValue, i, 1)
        End If
    Next
    GetColorText = xOut
End Function

Параметры RGB необходимо изменить в соответствии с цветом, который вы ищете. Кроме того, если в одной ячейке несколько подстрок, они будут объединены вместе.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .