Hvordan vlookup og returnere baggrundsfarve sammen med opslagsværdien i Excel?
Antag at du har en tabel som vist nedenstående skærmbillede. Nu vil du kontrollere, om en bestemt værdi er i kolonne A og derefter returnere den tilsvarende værdi sammen med baggrundsfarve i kolonne C. Hvordan opnås det? Metoden i artiklen kan hjælpe dig med at løse problemet.
Vlookup og returner baggrundsfarve med opslagsværdi efter brugerdefineret funktion
Vlookup og returner baggrundsfarve med opslagsværdi efter brugerdefineret funktion
Gør som følger for at slå en værdi op og returnere den tilsvarende værdi sammen med baggrundsfarve i Excel.
1. I regnearket indeholder den værdi, du vil oplyse, skal du højreklikke på arkfanen og vælge Vis kode fra genvejsmenuen. Se skærmbillede:
2. I åbningen Microsoft Visual Basic til applikationer vindue, skal du kopiere nedenstående VBA-kode til kodevinduet.
VBA-kode 1: Vlookup og returner baggrundsfarve med opslagsværdien
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. Klik derefter på indsatte > Moduler, og kopier nedenstående VBA-kode 2 ind i modulvinduet.
VBA-kode 2: Vlookup og returner baggrundsfarve med opslagsværdien
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. Når du har indsat de to koder, skal du klikke Værktøjer > Referencer. Kontroller derefter Microsoft Script Runtime boks i Referencer - VBAProject dialog boks. Se skærmbillede:
5. Tryk på andre + Q taster for at afslutte Microsoft Visual Basic til applikationer vindue og gå tilbage til regnearket.
6. Vælg en tom celle ved siden af opslagsværdien, og indtast derefter formel =LookupKeepColor(E2,$A$1:$C$8,3) ind i formellinjen, og tryk derefter på Enter-tasten.
Bemærk: I formlen E2 indeholder den værdi, du vil slå op, $ A $ 1: $ C $ 8 er tabelområdet og antallet 3 betyder, at den tilsvarende værdi, du vil returnere, findes i den tredje kolonne i tabellen. Venligst skift dem efter behov.
7. Bliv ved med at vælge den første resultatcelle, og træk udfyldningshåndtaget ned for at få alle resultater sammen med deres baggrundsfarve. Se skærmbillede.
Relaterede artikler:
- Hvordan kopieres kildeformatering af opslagscellen, når man bruger Vlookup i Excel?
- Hvordan vlookup og returneringsdatoformat i stedet for nummer i Excel?
- Hvordan bruges vlookup og sum i Excel?
- Hvordan vlookup returværdi i tilstødende eller næste celle i Excel?
- Hvordan vlookup værdi og returnere sand eller falsk / ja eller nej i Excel?
Bedste kontorproduktivitetsværktøjer
Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid. Klik her for at få den funktion, du har mest brug for...
Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere
- Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
- Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
- Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!