Jak vlookup a vrátit barvu pozadí spolu s vyhledávací hodnotou v aplikaci Excel?
Předpokládejme, že máte tabulku uvedenou níže. Nyní chcete zkontrolovat, zda je zadaná hodnota ve sloupci A, a poté vrátit odpovídající hodnotu spolu s barvou pozadí ve sloupci C. Jak toho dosáhnout? Metoda v článku vám pomůže problém vyřešit.
Vlookup a návrat barvy pozadí s hodnotou vyhledávání pomocí uživatelem definované funkce
Vlookup a návrat barvy pozadí s hodnotou vyhledávání pomocí uživatelem definované funkce
Chcete-li vyhledat hodnotu a vrátit její odpovídající hodnotu spolu s barvou pozadí v aplikaci Excel, postupujte následovně.
1. V listu obsahuje hodnotu, kterou chcete vlookup, klepněte pravým tlačítkem na kartu listu a vyberte Zobrazit kód z kontextové nabídky. Viz snímek obrazovky:
2. V otvoru Microsoft Visual Basic pro aplikace zkopírujte níže uvedený kód VBA do okna Kód.
Kód VBA 1: Vlookup a vrátit barvu pozadí s vyhledávací hodnotou
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. Pak klikněte na tlačítko Vložit > Modula zkopírujte níže uvedený kód VBA 2 do okna modulu.
Kód VBA 2: Vlookup a vrátit barvu pozadí s vyhledávací hodnotou
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. Po vložení dvou kódů klikněte na Tools > Reference. Poté zkontrolujte Microsoft Script Runtime pole v Reference - VBAProject dialogové okno. Viz snímek obrazovky:
5. zmáčkni Další + Q klávesy pro opuštění Microsoft Visual Basic pro aplikace okno a vrátit se zpět do listu.
6. Vyberte prázdnou buňku sousedící s vyhledanou hodnotou a poté zadejte vzorec =LookupKeepColor(E2,$A$1:$C$8,3) do řádku vzorců a poté stiskněte klávesu Enter.
Poznámka: Ve vzorci E2 obsahuje hodnotu, kterou vyhledáte, $ A $ 1: $ C $ 8 je rozsah tabulky a číslo 3 znamená, že odpovídající hodnota, kterou vrátíte, se najde ve třetím sloupci tabulky. Změňte je prosím podle potřeby.
7. Stále vybírejte první buňku s výsledky a přetažením rukojeti výplně dolů zobrazte všechny výsledky spolu s jejich barvou pozadí. Viz snímek obrazovky.
Související články:
- Jak kopírovat zdrojové formátování vyhledávací buňky při použití Vlookup v aplikaci Excel?
- Jak vlookup a vrátit formát data namísto čísla v aplikaci Excel?
- Jak používat vlookup a součet v aplikaci Excel?
- Jak vlookup vrátit hodnotu v sousední nebo další buňce v aplikaci Excel?
- Jak vlookup hodnotu a vrátit true nebo false / ano nebo ne v aplikaci Excel?
Nejlepší nástroje pro produktivitu v kanceláři
Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času. Kliknutím sem získáte funkci, kterou nejvíce potřebujete...
Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci
- Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
- Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
- Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!