エクセルでVLOOKUPをSUM関数と併用する方法(6つの方法)

  • これを共有
Hugh West

があります。 ブイルック は、Excel で最も強力で柔軟性があり、非常に便利な関数です。 しかし、ある結果を得るために ブイルック を使用する方法を紹介します。 ブイルック を持つ関数です。 SUM関数 を使用して、Excelで特定の操作を実行することができます。

練習用テンプレートダウンロード

練習用のExcelテンプレートはこちらから無料でダウンロードできますので、ご自身で練習してみてはいかがでしょうか。

VLOOKUP SUM.xlsx

エクセルでのVLOOKUP

ブイエルオークアップ は、' 縦型ルックアップ これは、Excel がある列の特定の値を検索して、同じ行の別の列から値を返すための関数です。

ジェネリック・フォーミュラ。

=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])

これです。

論証 定義
ルックアップバリュー 一致させようとしている値
table_array 値を検索したいデータ範囲
col_index_num lookup_valueの対応するカラム
レンジルック TRUE または FALSE のブール値である。

FALSE(または0)は完全一致を、TRUE(または1)は近似一致を意味します。

ExcelでSUM関数を使ったVLOOKUPの便利な活用法6選

を活用する方法を学びます。 ブイルック 総和 の関数を組み合わせて、特定の結果を生成することができます。

1.VLOOKUPとSUMで列の一致する値を計算する

学生の名前と各コースで取得した点数が異なる列に格納された次のデータセットを考えてみましょう。 特定の学生の合計点だけを知りたい場合はどうすればよいでしょうか。 それを得るためには、異なる列に基づいて数値を計算する必要があります。

異なる列を調べ、それらの列で一致する値の合計結果を得る方法を考えてみましょう。 VLOOKUP SUM 関数を使用することができます。

ステップス

  • データセットから結果を求める名前またはデータを選択し、別のセルにその名前またはデータを入れます(例:Johnを セルE12 ).
  • 結果を表示させたい別のセルをクリックする(例:............................)。 セルE13 ).
  • そのセルに、次の数式を書き込んでください。
=SUM(VLOOKUP(E12,B5:G9,{1,2,3,4,5,6},FALSE))

どこで

E12 = John, ルックアップ値として保存した名前

B5:G9 = ルックアップ値を検索するデータ範囲

{1,2,3,4,5,6} = ルックアップ値の対応するカラム(各コースのジョンの点数が格納されているカラム)。

ファルス = 完全一致させたいので、引数を FALSE .

  • プレス Ctrl + Shift + Enter をキーボードで入力します。

この処理で、必要な結果が得られます(ジョンの合計点数は 350 数学、物理、化学、生物、英語の各科目の点数を合計することで達成される)。

フォーミュラの内訳

どうやってジョンのマークを見つけたのか、数式を分解して理解しよう。

  • VLOOKUP(E12,B5:G9,{1,2,3,4,5,6},FALSE) ->を探しています。 E12 の(ヨハネ)。 B5:G9 (配列) を作成し、対応するカラムの値を正確に返します。 ({1,2,3,4,5,6},FALSE) .

出力:90,80,70,60,50 (これは、ジョンが個々のコースで達成した点数と全く同じです)

  • sum(vlookup(e12,b5:g9,{1,2,3,4,5,6},false))です。 -となります。 和(90,80,70,60,50)

出力します。 350 (ジョンの合計点)

2.VLOOKUPとSUMで行の一致する値を判定する

次のデータセットが、学生の名前と各コースで取得した点数が異なる列に格納されているとします。 もし、試験を受け直した特定の学生の合計点だけを見つけたいとしたらどうでしょうか。 データセットには、各コースの学生の点数が2行に分けられ、2種類の試験として宣言されています。 それを得るためには、以下のような計算だけでは不十分です。を異なる列に配置するだけでなく、複数の行を考慮する必要があります。

異なる列や行を調べて、それらの列や行の一致する値の合計結果を得る方法を考えてみましょう。 VLOOKUP SUM 関数を使用することができます。

ステップス

  • ワークシートのセルを選択して、データセットから後で結果を見つけたい名前またはデータを入れてください(私たちの場合、それは セルE13 ).
  • 結果を表示させたい別のセルをクリックする(例:............................)。 セルE14 ).
  • そのセルに、次の数式を書き込んでください。
=SUMPRODUCT((B5:B11=E13)*C5:G11)

この処理により、必要な結果(再受験生全員の合計点数)が得られます。

フォーミュラの内訳

再受験生との合計点をどのように求めたか、計算式を分解して理解しましょう。

  • B5:B11=E13 -> ルックアップ値と一致するものを探します(例:Johnが セルE13 ) の配列全体が、Name 列 ( B5:B11 ) を返します。 または FALSE をもとに検索してください。

出力します。 { 真;偽;偽;偽;偽;真;偽 }

私たちは の値を抽出することで、データセットにマッチした値があることを知ることができます。 これは、一定の値を抽出するのではなく、データセットから任意の名前をそのセルに書き込むことができるためです( E13 ),その結果が結果セルに自動生成されます(例. E14 )です(上の写真参照)。

  • SUMPRODUCT((B5:B11=E13)*C5:G11) -となります。 サンプロダクト{true;false;false;true;false}*(C5:G11) という意味です。 SUMPRODUCT関数 を乗算します。 TRUE/FALSE のみの結果を返します。 の値を取得し、セルに渡す。 FALSE の値は、実際にはテーブル配列の一致しないデータをキャンセルし、一致した値のみをセルに表示することになります。

出力します。 750 (再試験を受けたジョンの合計点)。

3.VLOOKUP関数とSUM関数を使って2つの異なるワークシートに値を生成する

というExcelのワークシートに学生の試験の点数が入っています。 マークシート .

という名前のワークシートに リザルトシート の場合、すべての生徒の個人的な合計取得点数を取得したい。

別のシートから作業シートへ値を計算する手順は以下のとおりです。

ステップス

  • まず、データの横のセル、またはそのワークシートの出力したい場所(例えば、名前Johnの横のセル)を選択します。
  • そのセルに、単純に VLOOKUP-SUM のような数式は、これまでの議論で既にご存知の通りです。
=sum(vlookup(d5,b5:g9,{1,2,3,4,5,6},false))である。

しかし、このワークシートには考慮すべきデータがないため、セルにエラーが発生します。 そこで、数式内の配列宣言の前にマウスのポインタを置くだけでよいのです(例:「配列宣言の前にマウスを置く」)。 B5:G9 をクリックし、値を取得したいもう一方のシートを選択します。

そのシートは作業シートに自動生成され、そのシートのすべてのデータは作業シートのプロパティになります。

これで計算式はこうなる。

=SUM(VLOOKUP(D5,Marksheet!B5:G9,{1,2,3,4,5,6},FALSE))

  • プレス 入力 と入力すれば、期待通りの結果が得られます(例:Johnの合計点数は 350 から生成されます。 マークシート ワークシート)

  • 行を下にドラッグして フィルハンドル を使い、残りの行に数式を適用して結果を得ることができます。

Excelの別のシートからすべてのルックアップデータの結果を、作業中のExcelシートに取得します。

続きを読む Excelで複数のシートにまたがってVlookupとSumを行う方法

4.複数のワークシートで値を測定する VLOOKUP関数とSUM関数の実装

さて、Excelで1つのワークシートから値を検索して取り出し、その結果を別のワークシートで取得する方法がわかったところで、今度は複数のワークシートでそれを行う方法を学びましょう。

次のようなデータで、3つの異なるワークシートがあるとします。 数学シート、物理シート ケミストリーシート ここに、各生徒の成績が保存されている。

そして、個人ではなく、生徒の合計点を知りたいのです。 ですから、作業シートで、すべての個人シートからそれを取り出すことができます。 そして、このプロセスは、前に説明したプロセスと似ています。

配列宣言の直前にシート全体を自動生成するには、シートをクリックして手動で選択しましたね。 ここでは、それとまったく同じことを行います。 以前は1枚のシートを選択するだけでしたが、今回は次のようになります。 複数枚を複数回選択する 関連するワークシートの各データセットの配列宣言の直前です。

  • 数式はこのようになります。
=SUM(VLOOKUP(B5,'Math Sheet'!B5:G9,{1,2,3,4,5,6},FALSE),VLOOKUP(B5,'Physics Sheet'!B5:G9,{1,2,3,4,5,6},FALSE),VLOOKUP(B5,'Chemistry Sheet'!B5:G9,{1,2,3,4,5,6},FALSE))

  • プレス 入力 と入力すれば、期待通りの結果が得られます(例:Johnの合計点数は 240 のワークシートから生成されます。 数学シート、物理シート、化学シート ).

  • 行を下にドラッグして フィルハンドル を使い、残りの行に数式を適用して結果を得ることができます。

Excelの複数のシートからすべてのルックアップデータの結果を、作業中のExcelシートに取得します。

類似の読み物。

  • エクセルで複数の条件を指定してVLOOKUPする方法(2つの方法)
  • SUMIFとVLOOKUPを組み合わせるExcel(3つのクイックアプローチ)

5.VLOOKUP関数とSUM関数で、別の列に表示された値を合計する

学生の名前と各コースで取得した点数が異なる列に格納された次のデータセットを考えてみましょう。 特定の学生の特定のコースでの合計点数を調べたい場合はどうすればよいでしょうか。 そのためには、別の列に基づいて数値を計算する必要があります。

代替の列を検索し、それらの列で一致する値の合計結果を取得する方法を考えてみましょう。 VLOOKUP SUM 関数を使用することができます。

ステップス

  • データセットから結果を求める名前またはデータを選択し、別のセルにその名前またはデータを入れます(例:Johnを セルE12 ).
  • 結果を表示させたい別のセルをクリックする(例:............................)。 セルE13 ).
  • そのセルに、次の数式を書き込んでください。
=sum(vlookup(e12,b5:g9,{2,5},false))です。

どこで

E12 = John, ルックアップ値として保存した名前

B5:G9 = ルックアップ値を検索するデータ範囲

{2,5} = ルックアップ値の対応する列(数学と切符、生物学コースのみジョンの点数が格納されている列)。

FALSE = 完全一致させたいので、引数を ファルス .

  • プレス Ctrl + Shift + Enter をキーボードで入力します。

この作業によって、要求された結果が得られます(ジョンは、トータルで 150 数学 生物学 コース)があります。

フォーミュラの内訳

数学と生物学のコースでジョンの合計点をどのように求めたか、計算式を分解して理解しましょう。

  • VLOOKUP(E12,B5:G9,{2,5},FALSE) ->を探しています。 E12 の(ヨハネ)。 B5:G9 (配列) を作成し、Math と Biology の対応する列の値を正確に返します。 ({2,5},FALSE) .

出力します。 90,60 (ジョンが数学と生物学で取った点数と全く同じです)

  • sum(vlookup(e12,b5:g9,{2,5},false))を使用する。 -となります。 総和(90,60)

出力します。 150 (数学と生物学の合計点)。

6.配列におけるVLOOKUP関数とSUM関数の実装

次のデータセットを見てください。ここでは、顧客の名前だけでなく、その顧客が購入した大量の製品の購入総額も調べる必要があります。

そして、活用します。 VLOOKUP SUM 関数を使って、この大きな配列の集合から結果を抽出することができます。

ステップス

  • ワークシートのセルを選択して、データセットから後で結果を見つけたい名前またはデータを入れてください(私たちの場合、それは セルJ5 ).
  • 結果を表示させたい別のセルをクリックする(例:............................)。 セルJ6 ).
  • そのセルに、次の数式を書き込んでください。
=sum(vlookup(f5:f9,b5:c9,2,false)*g5:g9*(e5:e9=j5))

この処理により、お客様の名前と購入総額が表示されます。

フォーミュラの内訳

どのように顧客名と関連する購入品を見つけたのか、計算式を分解して理解しましょう。

  • VLOOKUP(F5:F9,B5:C9,2,FALSE) -> は正確な名前を探します ( ファルス 引数)のすべての製品( F5:F9 ) を、2 番目のテーブルの Product 配列 ( B5:C9 )を最初のテーブルから取り出し,その商品の価格を返す(列インデックス 2 ).

出力します。 700,1500,100,300,500

  • VLOOKUP(F5:F9,B5:C9,2,FALSE)*G5:G9 -> G5:G9 は、データセットのQuantity列を指す。

    だから VLOOKUP(F5:F9,B5:C9,2,FALSE)*G5:G9 になる {(700,1500,100,300,500)*(10,50,20,200,80)} .

出力します。 7000,75000,2000,60000,40000

  • E5:E9=J5 -> ルックアップ値と一致するものを探します(例:Johnが セルJ5 ) の配列全体が、Name 列 ( E5:E9 ) を返します。 または ファルス をもとに検索してください。

出力します。 {true;false;false;false}となります。

私たちは の値を抽出することで、データセットにマッチした値があることを知ることができる。 これは、一定の値を抽出する処理ではない。 なぜなら、そのセルにはデータセットから任意の名前を書き込むことができるからだ( J5 ),その結果が結果セルに自動生成されます(例. J6 ).

  • VLOOKUP(F5:F9,B5:C9,2,FALSE)*G5:G9*(E5:E9=J5) -となります。 (7000,75000,2000,60000,40000)*({TRUE;FALSE;FALSE;FALSE;FALSE}) を乗算します。 TRUE/FALSE に対してのみ結果を返します。 の値を取得し、セルに渡す。 FALSE の値は、実際にはテーブル配列のマッチしないデータをキャンセルし、マッチした値のみをセルに表示することになります ( J6 ) にあるように、Name データセットから John という名前を選んだ場合 ( E5:E9 )のセル内 J5 のみで、購入合計金額( 7000 )のJohnに、Name Romanを入れると、次のようになります。 75000 を結果セル( J6 )です(上の写真参照)。

出力します。 7000,0,0,0,0

  • sum(vlookup(f5:f9,b5:c9,2,false)*g5:g9*(e5:e9=j5)) -となります。 総和(7000)

出力します。 7000 (まさにジョンの購入総額である)。

押さえておくべきポイント

  • 値を検索するデータテーブル配列の範囲は固定されているので、忘れずに ドル 記号を配列テーブルのセル参照番号の前に置く。
  • 配列の値を扱うときは、忘れずに Ctrl + Shift + Enter を押すだけで、結果を抽出することができます。 入力 を使用しているときのみ機能します。 Microsoft 365 .
  • を押した後 Ctrl + Shift + Enter の数式を数式バーで囲んでいることに気づきます。 中括弧{} を入力し、配列式として宣言します。 括弧{} を選択すると、Excelが自動的にこれを行います。

結論

の使い方を詳しく説明しました。 ブイルック 総和 この記事が皆様のお役に立てれば幸いです。 また、ご質問等ございましたら、お気軽にお問い合わせください。

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