Wie kann ich die Hintergrundfarbe zusammen mit dem Suchwert in Excel anzeigen und zurückgeben?
Angenommen, Sie haben eine Tabelle wie im folgenden Screenshot gezeigt. Jetzt möchten Sie überprüfen, ob sich ein bestimmter Wert in Spalte A befindet, und dann den entsprechenden Wert zusammen mit der Hintergrundfarbe in Spalte C zurückgeben. Wie wird dies erreicht? Die Methode im Artikel kann Ihnen bei der Lösung des Problems helfen.
Vlookup und Rückgabe der Hintergrundfarbe mit Lookup-Wert durch benutzerdefinierte Funktion
Vlookup und Rückgabe der Hintergrundfarbe mit Lookup-Wert durch benutzerdefinierte Funktion
Gehen Sie wie folgt vor, um einen Wert zu suchen und den entsprechenden Wert zusammen mit der Hintergrundfarbe in Excel zurückzugeben.
1. Klicken Sie im Arbeitsblatt mit dem Wert, den Sie anzeigen möchten, mit der rechten Maustaste auf die Registerkarte Blatt und wählen Sie Code anzeigen aus dem Kontextmenü. Siehe Screenshot:
2. In der Öffnung Microsoft Visual Basic für Applikationen Fenster, bitte kopieren Sie den folgenden VBA-Code in das Code-Fenster.
VBA-Code 1: Vlookup und Rückgabe der Hintergrundfarbe mit dem Lookup-Wert
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. Dann klick Insert > Modul, und kopieren Sie den folgenden VBA-Code 2 in das Modulfenster.
VBA-Code 2: Vlookup und Rückgabe der Hintergrundfarbe mit dem Lookup-Wert
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. Nachdem Sie die beiden Codes eingegeben haben, klicken Sie dann auf Tools > Bibliographie. Dann überprüfen Sie die Microsoft Script-Laufzeit Box in der Referenzen - VBAProject Dialogbox. Siehe Screenshot:
5. Drücken Sie die Taste Andere + Q Tasten zum Verlassen des Microsoft Visual Basic für Applikationen Fenster und gehen Sie zurück zum Arbeitsblatt.
6. Wählen Sie eine leere Zelle neben dem Nachschlagewert aus und geben Sie dann die Formel ein =LookupKeepColor(E2,$A$1:$C$8,3) in die Formelleiste und drücken Sie die Eingabetaste.
Note: In der Formel E2 enthält den Wert, den Sie suchen, $ A $ 1: $ C $ 8 ist der Tabellenbereich und die Nummer 3 bedeutet, dass der entsprechende Wert, den Sie zurückgeben, sich in der dritten Spalte der Tabelle befindet. Bitte ändern Sie sie nach Bedarf.
7. Wählen Sie weiterhin die erste Ergebniszelle aus und ziehen Sie den Füllgriff nach unten, um alle Ergebnisse zusammen mit ihrer Hintergrundfarbe zu erhalten. Siehe Screenshot.
In Verbindung stehende Artikel:
- Wie kopiere ich die Quellformatierung der Suchzelle, wenn ich Vlookup in Excel verwende?
- Wie kann ich das Datumsformat anstelle der Zahl in Excel anzeigen und zurückgeben?
- Wie verwende ich vlookup und sum in Excel?
- Wie kann ich den Rückgabewert in einer benachbarten oder nächsten Zelle in Excel anzeigen?
- Wie kann ich einen Wert suchen und in Excel true oder false / yes oder no zurückgeben?
Beste Office-Produktivitätstools
Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...
Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich
- Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
- Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!