2016-08-24 17 views
2

excelの2次元マトリックスで複数の値をルックアップする方法がありますか?たとえば:複数の値をExcelで検索

sum(vlookup({2015,2016},Matrix,{2,4,6},False)) = 3 + 4 + 5 + 2 + 3 + 2 

2014 1 3 7 11 9 2 
2015 3 6 4 12 5 8 
2016 2 1 3 99 2 6 

私は必ずしも関数VLOOKUPを使用する必要はありませんが、私はかなり長いかもしれないリスト{2015,2016}ので、複数回、それらを合計すると同じ機能を使用する必要がないことを好みます。

答えて

5

つのセルごとに検索条件を入れて:

enter image description here

その後、この式を使用します。あなたはハードコードに数字をしたい場合は

=SUMPRODUCT(ISNUMBER(SEARCH($A$1:$A$3,J1))*ISNUMBER(SEARCH(COLUMN($B$1:$G$3),K1))*$B$1:$G$3) 

enter image description here


をあなたはこうすることができます:

=SUMPRODUCT(ISNUMBER(SEARCH($A$1:$A$3,"2015,2016"))*ISNUMBER(SEARCH(COLUMN($B$1:$G$3),"2,4,6"))*$B$1:$G$3) 
+1

私はそれが大好きです。実際には、Excelの列で実際にはマトリックス/テーブルの列に対応しています。テーブルの左上のセルがC4であるとすると、エクセルシートの位置だけでなく、データテーブルを基準にして列番号を作成するために、列調整係数を追加する必要があります。私はそれが泥のようにはっきりしていると思うし、今私はサークルで話している。 –

2

私は@ ScottCranerの答えが大好きですが、ちょっと違っていましたが、同じトリックでクローズアップしました。

N1 = 2015 
N2 = 2016 

そして、私は、列Oでルックアップのために使用したい列:次に

O1 = 2 
O2 = 4 
O3 = 6 

は私にとっては、私は列Nで次のように年の値を入れて、私は次の(は、配列数式として入力 - で、それを入れた後、あなたはCtrl + Shiftキーを押し+ ENTERの意味)を使用:

=SUMPRODUCT(ISNUMBER(MATCH(A1:A3,$N$1:$N$2,0))*ISNUMBER(MATCH(COLUMN(A1:G3)-COLUMN(A1)+1,$O$1:$O$3,0))*A1:G3) 

また、スコットの答えは完全に正しいです。同じ結果を得るために別の方法で追加しました。

あなたや他の人が同じ種類のチャレンジに直面するのを助けてくれることを願っています。

+1

私はそれをCSEで入力する必要はないと思います。私はそれで遊んでいて、それはうまく動作しません。 –

+0

私が間違っていれば私を訂正してください。 '-COLUMN(A1)+ 1'は' -1 + 1'だけで常に「0」なので、式から削除することができます。 – Mrig

+0

@ScottCraner、クール!! - 私は本当にそれなしでそれを試していない...素晴らしいチェック! –

関連する問題