如何在Excel中進行vlookup并返回背景色以及查找值?
假設您有一個表格,如下所示。 現在,您要檢查指定的值是否在A列中,然后在C列中返回相應的值以及背景色。如何實現? 本文中的方法可以幫助您解決問題。
Vlookup并通過用戶定義的函數返回具有查找值的背景色
Vlookup并通過用戶定義的函數返回具有查找值的背景色驚人的! 在 Excel 中使用高效的選項卡,如 Chrome、Firefox 和 Safari!每天節省50%的時間,并減少數千次鼠標單擊!請執行以下操作以在Excel中查找值并返回其對應的值以及背景色。
1.在工作表中包含您要vlookup的值,右鍵單擊工作表選項卡,然后選擇 查看代碼 從上下文菜單中。 看截圖:
2.在開幕 Microsoft Visual Basic應用程序 窗口,請將下面的VBA代碼復制到“代碼”窗口中。
VBA代碼1:Vlookup并返回具有查找值的背景色
Sub Worksheet_Change(ByVal Target As Range)Dim I As LongDim xKeys As LongDim xDicStr As StringOn Error Resume NextApplication.ScreenUpdating = FalsexKeys = UBound(xDic.Keys)If xKeys >= 0 ThenFor I = 0 To UBound(xDic.Keys)xDicStr = xDic.Items(I)If xDicStr <> "" ThenRange(xDic.Keys(I)).Interior.Color = _Range(xDic.Items(I)).Interior.ColorElseRange(xDic.Keys(I)).Interior.Color = xlNoneEnd IfNextSet xDic = NothingEnd IfApplication.ScreenUpdating = TrueEnd SubCopy3。 然后點擊 插頁 > 模塊,然后將下面的VBA代碼2復制到“模塊”窗口中。
VBA代碼2:Vlookup并返回具有查找值的背景色
Public xDic As New DictionaryFunction LookupKeepColor (ByRef FndValue, ByRef LookupRng As Range, ByRef xCol As Long)Dim xFindCell As RangeOn Error Resume NextSet xFindCell = LookupRng.Find(FndValue, , xlValues, xlWhole)If xFindCell Is Nothing ThenLookupKeepColor = ""xDic.Add Application.Caller.Address, ""ElseLookupKeepColor = xFindCell.Offset(0, xCol - 1).ValuexDic.Add Application.Caller.Address, xFindCell.Offset(0, xCol - 1).AddressEnd IfEnd FunctionCopy4.插入兩個代碼后,然后單擊 工具 > 參考資料。 然后檢查 Microsoft腳本運行時 框 參考– VBAProject 對話框。 看截圖:
5。 按 其他 + Q 退出鍵 Microsoft Visual Basic應用程序 窗口,然后返回工作表。
6.選擇一個與查詢值相鄰的空白單元格,然后輸入公式 =LookupKeepColor(E2,$A:$C,3) 進入公式欄,然后按Enter鍵。
備注: 在公式, E2 包含您將要查找的值, $ A $ 1:$ C $ 8 是表格范圍和數字 3 表示您將返回的相應值位于表的第三列中。 請根據需要更改它們。
7.繼續選擇第一個結果單元格,然后向下拖動“填充手柄”以獲取所有結果及其背景色。 查看截圖。
相關文章:在Excel中使用Vlookup時如何復制查找單元格的源格式?如何在Excel中vlookup和返回日期格式而不是數字?如何在Excel中使用vlookup和sum?如何在Excel中相鄰或下一個單元格中的vlookup返回值?如何在Excel中vlookup值并返回true或false / yes或no?最佳辦公生產力工具
將小時轉化為分鐘 Kutools for Excel!準備好增強您的 Excel 任務了嗎? 利用的力量 Kutools for Excel - 您終極的節省時間的工具。 簡化復雜的任務并像專業人士一樣瀏覽數據。 以閃電般的速度體驗 Excel!
為什么需要 Kutools for Excel