ExcelでVLOOKUP関数とINDIRECT関数を併用する方法

  • これを共有
Hugh West

を組み合わせて使う方法を探している方は、ぜひ参考にしてください。 INDIRECT ExcelのVLOOKUP関数 ということであれば、この記事は役に立つと思います。 INDIRECT機能 Excel では、数式内の指定したセルをロックすることができます。 したがって、数式自体を変更することなく、数式内のセル参照を変更することができます。 複数のデータベースを操作しているときに、以下の操作を実行する必要があることがあります。 ダイナミックVLOOKUP の組み合わせで簡単にできます。 INDIRECT とのことです。 VLOOKUP機能 を実行する方法について説明します。 間接的Vlookup の式で表されます。

クイックビュー

今日の課題をざっと見てみましょう。

練習用ワークブックをダウンロードする

INDIRECTとVLOOKUPの組合せ.xlsx

2020.xlsx

2021.xlsx

ExcelでVLOOKUP関数とINDIRECT関数を併用する3つの例

ここでは、携帯電話各社の機種をいくつかリストアップしています。 2017 , 2018 , 2019 , 2020 そして 2021 これらの関数を組み合わせて、これらのシートから必要な値を新しいシートに抽出します。

本記事の作成にあたり Microsoft Excel 365 バージョン ただし、お客様のご都合により、他のバージョンをお使いいただくことも可能です。

例1:INDIRECT関数とVLOOKUP関数を使って、異なるシートから値を抽出する場合

これらの関数を組み合わせて使用するシナリオを紹介します。 2017-2021 そして、それらの名前とモデルを新しいワークシートに体系的に組み立てる必要があります。 INDIRECT VLOOKUP を簡単にできるようになりました。

新しいワークシートにテーブルを作成しました。 このテーブルには "携帯電話名" 列と関連する年 "2017年"、"2018年"、"2019年"、"2020年"、"2021年" これらの年のモデルを、それぞれのシートから、指定された期間、取り出す必要があります。 "携帯電話名" .

ステップス :

  • では、その応用として 「間接的Vlookup の式で表されます。

一般的な計算式は

=VLOOKUP(lookup_value, INDIRECT("Table_Array"), col_index,0)

  • ここで、セルの数式に値を挿入します。 C5 となり、最終的な計算式は
=VLOOKUP($B5,INDIRECT("'"&C$4&"'!"& "B5:C9"),2,FALSE)

フォーミュラ・ブレークダウン

  • ルックアップ値 でございます $B4
  • 表_配列 はこの関数で作成されます。 INDIRECT("'"&C$3&"'!"& "B4:C8")。 混合リファレンス C$3 は、列の見出しを指します。 (2017) は、ワークシート名と一致します。 "連結演算子(&)" は、シングルクォート文字( "&C$3&") をどちらかに指定します。 特定のワークシートの参照を作成するために "エクスクラメーション・ポイント(!)" この連結の出力は「テキスト」であり,これは "INDIRECT" 関数を参照することができます。
  • 列のインデックス番号 でございます "2".
  • を求めます。 EXACTマッチ (FALSE) .

  • プレス エンタメ を下にドラッグし、右側に フィルハンドル ツールを使用します。

こうすることで、各携帯電話会社の年式ごとの全機種を抽出することができます。

例2:INDIRECT関数、VLOOKUP関数、LEFT関数、RIGHT関数を使って異なるシートから値を取得する

このセクションでは、携帯電話会社の名前と年号が一緒になっています。 この課題は、その携帯電話会社のその年号のモデル名を検索することです。 そのためには , ライト , FIND , INDIRECT そして VLOOKUP関数 .

ステップス :

  • セルに次の数式を適用します。 C5 .
=VLOOKUP(LEFT(B5, FIND(" ", B5)-1), INDIRECT("'&RIGHT(B5,4)&"'!"& "B5:C9"),2, FALSE)

フォーミュラ・ブレークダウン

  • FIND(" ", B5) → になります。
    • FIND(" ", "iPhone 2017") → 文字列中のスペースの位置を求める
      • 出力 → 7
  • find(" ", b5)-1→→→ になる
    • 7-1 → 6
  • 左(b5, find(" ", b5)-1) → になる
    • LEFT("iPhone2017",6)の場合 → を抽出します。 6 この文字列の文字
      • 出力→"iPhone"
  • RIGHT(B5,4)の場合 になる
    • RIGHT("iPhone2017",4)の場合 → を抜き出す。 4 の文字列を右側から削除する。
      • 出力 → 2017年
  • INDIRECT("'"&RIGHT(B5,4)&"'! になる
    • INDIRECT("'"& "2017"&""!"& "B5:C9")
      • 出力→「2017」!B5:C9
  • VLOOKUP(LEFT(B5,FIND(" ",B5)-1),INDIRECT("'"&RIGHT(B5,4)&"'!"& "B5:C9"),2,FALSE) →次のようになります。 になる
    • VLOOKUP("iPhone", '2017'!B5:C9,2, FALSE) → のモデル名を抽出します。 2017 この会社の
      • 出力 → iPhone X
  • を下にドラッグし、右にドラッグしてください。 フィルハンドル .

最終的には、以下のモデルを モデル の欄があります。

例3:INDIRECT関数、VLOOKUP関数、TEXT関数の組合せ

ここでは、以下の2つのデータセットで、モバイルモデルについて 2020 そして 2021 そして、このシートの名前は... 012020 そして 012021 を表す。 1月 この数年間の月

新しいシートに、以下のような表を作成しました。 の中にある。 シリアルナンバー の列には、他のシートで値を探すための基準となる数字が書かれています。 また、他の列には 年月日 をヘッダとし、そのヘッダを元にシートを探します。

ステップス :

  • セルに次の数式を適用します。 C5 .
=VLOOKUP($B5, INDIRECT(TEXT(C$4, "MMYYYY")&"!B5:D9")),3,0)

フォーミュラ・ブレークダウン

  • text(c$4, "mmyyyy") → になります。
    • テキスト(43831, "mmyyyy") → TEXT機能 は、日付の値を次のようにフォーマットします。 西暦MMYYY .
      • 出力 → 012020
  • INDIRECT(TEXT(C$4, "MMYYYY")&"! になる
    • INDIRECT(“012020″&”!B5:D9″)
      • 出力→'012020'!B5:D9
  • VLOOKUP($B5, INDIRECT(TEXT(C$4, "MMYYYY")&"!B5:D9″),3,0) ⇒ VLOOKUP($B5, INDIRECT(C$4, "MMYYYY")&"!B5:D9″),3,0) になる
    • VLOOKUP(1, '012020'!B5:D9,3,0)
      • 出力 → iPhone 12
  • を下にドラッグし、右にドラッグしてください。 フィルハンドル .

最終的には、以下のような結果を得ることができます。

ExcelでINDIRECT関数とVLOOKUP関数を異なるワークブックに使用する方法

以下の図では 2 別冊ワークブック 2020.xlsx そして 2021.xlsx ワークシートと一緒に 2020 そして 2021 これらのワークブックから、必要な値を新しいワークブックに抽出します。

モデル名を抽出するために、新しいワークブックに以下のデータセットを作成しました。

ステップス :

  • セルに次の数式を入力します。 C5 .
=VLOOKUP($B5,INDIRECT("["&C$4&".xlsx"&"]"&C$4&"'!"&"$B$5:$D$9"), 3,FALSE")

フォーミュラ・ブレークダウン

  • "'["&C$4&".xlsx"&"]". → になります。
    • "'["&2020&".xlsx"&"]" → アンパーサンド演算子 はこれらの文字列を結合します
      • 出力 → "'[2020.xlsx]".
  • INDIRECT("'["&C$4&".xlsx"&"]"&C$4&"')! になる
    • INDIRECT("'[2020.xlsx]"&2020&"'!"&"$B$5:$D$9")
      • 出力 → '2020.xlsx'!$B$5:$D$9
  • VLOOKUP($B5,INDIRECT("'["&C$4&".xlsx"&"]"&C$4&"'! になる
    • VLOOKUP(1,'2020.xlsx'!$B$5:$D$9, 3,FALSE)です。
      • 出力 → iPhone 12
  • を下にドラッグし、右にドラッグしてください。 フィルハンドル .

最終的には、異なるワークブックから以下のようなモバイルモデルを抽出した。

この数式を扱うには、すべてのワークブックを開く必要があります。そうしないと、エラーが返されることがあります。

プラクティス部門

自分で練習するために 実践編 の部分は、各シートの右側にあります。

続きを読む Excelの2つのシート間のVLOOKUPの例

覚えておきたいこと

⏩对不起 INDIRECT機能 もし ref_text が有効なセル参照でない場合、この関数は #REF! エラー値です。

VLOOKUP関数 は,常に一番左の列から右の列へ向かって検索を行う。 この関数は "決して" は、左のデータを検索します。

を選択したとき ⏩。 "Lookup_value"(ルックアップ・バリュー セルの絶対参照を使用する必要があります。 ($) を使用してアレイをブロックします。

結論

強力なコンボ 「間接的Vlookup この記事が皆様のお役に立つことを願っています。 この記事について何かご意見がありましたら、コメント欄でお寄せください。

Hugh West は、業界で 10 年以上の経験を持つ、非常に経験豊富な Excel トレーナー兼アナリストです。彼は会計と財務の学士号と経営管理の修士号を取得しています。ヒューは教えることに情熱を持っており、理解しやすい独自の教育アプローチを開発しました。彼の Excel に関する専門知識は、世界中の何千人もの学生や専門家がスキルを向上させ、キャリアで優れた成果を上げるのに役立ってきました。 Hugh はブログを通じて知識を世界に共有し、個人や企業が潜在能力を最大限に発揮できるよう無料の Excel チュートリアルとオンライン トレーニングを提供しています。