Як шукати та повертати колір тла разом із значенням пошуку в Excel?
Припустимо, у вас є таблиця, як показано на скріншоті нижче. Тепер ви хочете перевірити, чи вказане значення знаходиться в стовпці A, а потім повернути відповідне значення разом із кольором фону в стовпці C. Як його досягти? Метод у статті може допомогти вам вирішити проблему.
Перегляд і повернення кольору фону зі значенням пошуку за користувацькою функцією
Перегляд і повернення кольору фону зі значенням пошуку за користувацькою функцією
Будь ласка, виконайте наступні дії для пошуку значення та повернення відповідного значення разом із кольором тла в 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 Потім натисніть Insert > Модуліта скопіюйте наведений нижче код 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. Вставивши два коди, натисніть Tools > посилання. Потім перевірте Виконання сценарію Microsoft коробка в Посилання - VBAProject діалогове вікно. Дивіться знімок екрана:
5 Натисніть кнопку інший + Q клавіші для виходу з Microsoft Visual Basic для додатків вікно і поверніться до робочого аркуша.
6. Виберіть порожню комірку, поруч із значенням пошуку, а потім введіть формулу =LookupKeepColor(E2,$A$1:$C$8,3) у рядок формул, а потім натисніть клавішу Enter.
примітки: У формулі, E2 містить значення, яке ви будете шукати, $ A $ 1: $ C $ 8 - діапазон таблиці та номер 3 означає, що відповідне значення, яке ви повернете, знаходить у третьому стовпці таблиці. Будь ласка, змініть їх, як вам потрібно.
7. Продовжуйте обирати першу комірку результату та перетягніть маркер заповнення вниз, щоб отримати всі результати разом із кольором фону. Дивіться знімок екрана.
Статті по темі:
- Як скопіювати вихідне форматування комірки пошуку під час використання Vlookup в Excel?
- Як здійснити пошук і повернення формату дати замість числа в Excel?
- Як використовувати vlookup і суму в Excel?
- Як vlookup повернути значення у сусідній або наступній комірці в Excel?
- Як vlookup значення і повернути true або false / так чи ні в Excel?
Найкращі інструменти продуктивності офісу
Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу. Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...
Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу
- Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
- Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
- Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!