2017-02-10 10 views
3

この問題を解決する方法については少し新しくなり、困惑しています。私は2つの優れたシートを持っています。複数の条件をExcelで検索する

シート1は、(大規模なデータセット)のように見える:HIC又はGSN場合、行1(H1Cに、表1に、例えば

Condition HIC1 HIC1 HIC1 GSN  GSN  GSN 
AMA   B60  B61 B62  02934 02935 
ALD   H1A  H1C   04821 03473 
HEC   W0A  W0B 

HIC GSN  ND11 
H1C 00214 0212107 
C4I 07287 0214380 
L1A 07731 0214501 

シート2のように見えますまたは00214)が表2のどこかに存在する場合、それは一致に対応する表1からND11番号を取り出す。私はVLOOKUPを使ってみましたが、問題に近づく方法については失敗しています。私が試した

VLOOKUPは、任意のヘルプは素晴らしいことだ、

=VLOOKUP(OR(Table1'H1C', Table1'00214),Table2A2:G2,Table1'ND11',0) 

ました。

+0

私はこれをチェックし、あなたに正確な答えを与えるためにExcelが手元にありませんが、あなたはおそらく、すべての可能なH1C値が1列と別でGSN値になるように、あなたのSheet2を再配置する必要があります。次に、MATCH関数を使用して、値がSheet2の適切な列に存在するかどうかを確認できます。 –

+0

OR関数はMATCH関数の外になければなりません。VLOOKUPの例のようにではなく、ORの働きではありません。 –

答えて

1

UPDATE:

OK、I質問を再読み込み、私は誤解だと思います。あなたは一致するようにしたいHICまたはGSNその場合、私は幾何学的にOR配列を知る方法がないので、いくつかのヘルパーカラムを使用しなければなりませんでした。

=IFERROR(MATCH(B7,$A$2:$A$4,0),IFERROR(MATCH(C7,$A$2:$A$4,0),IFERROR(MATCH(D7,$A$2:$A$4,0),NA()))) 
=IFERROR(MATCH(E7,$B$2:$B$4,0),IFERROR(MATCH(F7,$B$2:$B$4,0),IFERROR(MATCH(G7,$B$2:$B$4,0),NA()))) 
=INDEX($C$2:$C$4,IFERROR(I7,IFERROR(J7,NA()))) 

あなただけで最後IFERROR(J7,NA())を置き換えることができます:だから、私は...これでI7J7、およびK7式は(それぞれ)です

iferror with match screenshot

を...思い付いJ7ですが、Excelのエラー処理が駄目になります。


ORIGINAL:私は(私はを疑う)正しく問題を理解している場合

は、あなたが一致HICGSNの値についてSheet1からND11値を取得したいです。単一の一致の場合、INDEX/MATCHのコンボはうまく機能します。ただし、複数の基準の場合は、SUMPRODUCTがうまく機能します。次のスクリーンショット...

sumproduct screenshot

に...私は、列Cの値がHICおよび列FはGSNに一致する一致する最初のテーブルにND11の値を取得するために、次の式を使用しましたあなたは3 HICの三GSNのを持っている理由...

=SUMPRODUCT((--($A$2:$A$4=C10)*--($B$2:$B$4=F10))*$C$2:$C$4) 

は今、私はわからないので、これは期待された結果ない場合あなたはあなたの質問について詳しく説明する必要があります。

+0

@reasaraありがとう。逆も可能かどうか疑問に思っていますか?可能な限り、表2のすべての要素を検索し、それらを表1(HIC1およびGSN)に一致させ、関連付けられたND11を戻しますか?テーブル2に対してチェックされるとき、テーブル1の単一の条件に対して複数の一致が存在する可能性があります。 –

+0

確か。同じこと、単一の配列セル参照を反転するだけです。しかし、複数の結果がある場合は、複数のセル(列)を使用する必要があります。 – reasra

+0

ありがとう!だから私は、Sheet1の列をND11のすぐ隣に置いて、Sheet2の項目を一致させることはできますか?理想的には、シート2の代わりにシート1にND11をマッチさせるといいでしょう。ごめんなさい、ちょっと混乱しているようです。 –