メインコンテンツへスキップ
 

Excelでルックアップ値とともに背景色をvlookupして返す方法は?

作者: シルヴィア 最終更新日:2020年06月18日

以下のスクリーンショットのようなテーブルがあるとします。 ここで、指定した値が列Aにあるかどうかを確認してから、対応する値を背景色とともに列Cに返します。これを実現するにはどうすればよいですか。 この記事の方法は、問題の解決に役立ちます。

Vlookupとユーザー定義関数によるルックアップ値で背景色を返します


Vlookupとユーザー定義関数によるルックアップ値で背景色を返します

値を検索し、対応する値を背景色とともにExcelで返すには、次の手順を実行してください。

1.ワークシートにvlookupする値が含まれている場合は、シートタブを右クリックして、 コードを表示 コンテキストメニューから。 スクリーンショットを参照してください:

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。 次に、をクリックします インセット > モジュールをクリックし、以下の 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. XNUMX つのコードを挿入した後、 ツール > 参考情報。 次に、 Microsoftスクリプトランタイム 内箱 参照– VBAProject ダイアログボックス。 スクリーンショットを参照してください:

5。 プレス 他の + Q 終了するためのキー アプリケーション向け Microsoft Visual Basic ウィンドウをクリックして、ワークシートに戻ります。

6. ルックアップ値の隣の空白セルを選択し、数式を入力します。 =LookupKeepColor(E2,$A$1:$C$8,3) 数式バーに移動し、Enterキーを押します。

Note:式では、 E2 検索する値が含まれています。 $ A $ 1:$ C $ 8 はテーブルの範囲であり、数値は 3 は、返される対応する値がテーブルの XNUMX 列目にあることを意味します。 必要に応じて変更してください。

7. 最初の結果セルを選択し続け、塗りつぶしハンドルを下にドラッグして、すべての結果を背景色とともに取得します。 スクリーンショットを参照してください。


関連記事:

最高のオフィス生産性向上ツール

🤖 Kutools AI アシスタント: 以下に基づいてデータ分析に革命をもたらします。 インテリジェントな実行   |  コードを生成  |  カスタム数式の作成  |  データを分析してグラフを生成する  |  Kutools関数を呼び出す...
人気の機能: 重複を検索、強調表示、または識別する   |  空白行を削除する   |  データを失わずに列またはセルを結合する   |   数式なしのラウンド ...
スーパールックアップ: 複数の基準の VLookup    複数の値の VLookup  |   複数のシートにわたる VLookup   |   ファジールックアップ ....
詳細ドロップダウン リスト: ドロップダウンリストを素早く作成する   |  依存関係のドロップダウン リスト   |  複数選択のドロップダウンリスト ....
列マネージャー: 特定の数の列を追加する  |  列の移動  |  Toggle 非表示列の表示ステータス  |  範囲と列の比較 ...
注目の機能: グリッドフォーカス   |  デザインビュー   |   ビッグフォーミュラバー    ワークブックとシートマネージャー   |  リソースライブラリ (自動テキスト)   |  日付ピッカー   |  ワークシートを組み合わせる   |  セルの暗号化/復号化    リストごとにメールを送信する   |  スーパーフィルター   |   特殊フィルター (太字/斜体/取り消し線をフィルター...) ...
上位 15 のツールセット12 テキスト ツール (テキストを追加, 文字を削除する、...)   |   50+ チャート 種類 (ガントチャート、...)   |   40+ 実用的 (誕生日に基づいて年齢を計算する、...)   |   19 挿入 ツール (QRコードを挿入, パスから画像を挿入、...)   |   12 変換 ツール (数字から言葉へ, 通貨の換算、...)   |   7 マージ&スプリット ツール (高度な結合行, 分割セル、...)   |   ... もっと

Kutools for Excel で Excel スキルを強化し、これまでにない効率を体験してください。 Kutools for Excelは、生産性を向上させ、時間を節約するための300以上の高度な機能を提供します。  最も必要な機能を入手するにはここをクリックしてください...


Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性を 50% 向上させ、毎日何百回もマウス クリックを減らすことができます!