Как vlookup и вернуть цвет фона вместе со значением поиска в Excel?
Предположим, у вас есть таблица, как показано на скриншоте ниже. Теперь вы хотите проверить, находится ли указанное значение в столбце A, а затем вернуть соответствующее значение вместе с цветом фона в столбце C. Как этого добиться? Метод, описанный в статье, может помочь вам решить проблему.
Vlookup и возврат цвета фона со значением поиска с помощью пользовательской функции
Vlookup и возврат цвета фона со значением поиска с помощью пользовательской функции
Пожалуйста, сделайте следующее, чтобы найти значение и вернуть его соответствующее значение вместе с цветом фона в Excel.
1. На листе, содержащем значение, которое вы хотите просмотреть, щелкните правой кнопкой мыши вкладку листа и выберите Просмотреть код из контекстного меню. Смотрите скриншот:
2. В дебюте Microsoft Visual Basic для приложений окно, скопируйте ниже код VBA в окно кода.
Код VBA 1: Vlookup и возврат цвета фона со значением поиска
Sub Worksheet_Change(ByVal Target As Range)
Dim I As Long
Dim xKeys As Long
Dim xDicStr As String
On Error Resume Next
Application.ScreenUpdating = False
xKeys = UBound(xDic.Keys)
If xKeys >= 0 Then
For I = 0 To UBound(xDic.Keys)
xDicStr = xDic.Items(I)
If xDicStr <> "" Then
Range(xDic.Keys(I)).Interior.Color = _
Range(xDic.Items(I)).Interior.Color
Else
Range(xDic.Keys(I)).Interior.Color = xlNone
End If
Next
Set xDic = Nothing
End If
Application.ScreenUpdating = True
End Sub
3. Затем нажмите Вставить > Модулии скопируйте приведенный ниже код VBA 2 в окно модуля.
Код VBA 2: Vlookup и возврат цвета фона со значением поиска
Public xDic As New Dictionary
Function LookupKeepColor (ByRef FndValue, ByRef LookupRng As Range, ByRef xCol As Long)
Dim xFindCell As Range
On Error Resume Next
Set xFindCell = LookupRng.Find(FndValue, , xlValues, xlWhole)
If xFindCell Is Nothing Then
LookupKeepColor = ""
xDic.Add Application.Caller.Address, ""
Else
LookupKeepColor = xFindCell.Offset(0, xCol - 1).Value
xDic.Add Application.Caller.Address, xFindCell.Offset(0, xCol - 1).Address
End If
End Function
4. После ввода двух кодов нажмите Инструменты > Рекомендации. Затем проверьте Среда выполнения сценария Microsoft коробка в Ссылки - VBAProject диалоговое окно. Смотрите скриншот:
5. нажмите другой + Q ключи для выхода из Microsoft Visual Basic для приложений окно и вернитесь к рабочему листу.
6. Выберите пустую ячейку рядом с поисковым значением и введите формулу. =LookupKeepColor(E2,$A$1:$C$8,3) в панель формул и нажмите клавишу Enter.
Внимание: В формуле E2 содержит значение, которое вы будете искать, 1 австралийский доллар: 8 канадских долларов это диапазон таблицы, а число 3 означает, что соответствующее значение, которое вы вернете, находится в третьем столбце таблицы. Пожалуйста, измените их по своему усмотрению.
7. Продолжайте выбирать первую ячейку результата и перетащите маркер заливки вниз, чтобы получить все результаты вместе с их цветом фона. Смотрите скриншот.
Статьи по теме:
- Как скопировать исходное форматирование ячейки поиска при использовании Vlookup в Excel?
- Как использовать vlookup и формат даты возврата вместо числа в Excel?
- Как использовать vlookup и суммирование в Excel?
- Как vlookup вернуть значение в соседней или следующей ячейке в Excel?
- Как получить значение vlookup и вернуть истину или ложь / да или нет в Excel?
Лучшие инструменты для офисной работы
Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени. Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!