2017-06-04 3 views
0

2枚あります。vlookup内で複数のif条件を記述する際の問題

最初のシートには、自転車とその修復日付(DD/MM/YYYY)形式の最初の2つの列に固有の情報があります。

2枚目のシートには、自転車およびその修理日(DD/MM/YYYY)および診断日(DD/MM/YYYY)に関する最初の3つの列に複数の重複した項目があります。

vlookupを使用して、私は診断日を見つけました。修理日と同じにすることも、特定の自転車の修理日の直前にすることもできます。

例: - 自転車用

、私は20/02/2017として修理日付を持っています。 (21/02/2017、2011年5月27日、2015年28月28日)の3つの診断日があります。

次のように最後に、私は答えを期待: -

Bike  Repair date    Diagnostic date 

Name  20/02/2017     28/12/2015 

私は修理と診断日付の同じ年を持つエントリのために行うことに成功しました。

規定の例では、それは異なります。

あなたがこの上で私を助けている場合、私は幸せになる.......

答えて

0

VLOOKUPは範囲でのみ動作している間、それは、(合成)の配列で動作しますので、あなたはINDEX/MATCHを必要としています。次の(C2に入力してからCtrl+Shift+Enterと入力し、次にC列にコピー)は、複数の条件を満たすために構成ブール値配列を使用し、Sheet1のC列(Diagnostic date) 。

'Sheet2!C2: 
=INDEX(Sheet1!C:C,MATCH(1,(Sheet1!A:A=A2)*(Sheet1!B:B=B2)*(Sheet1!C:C<=B2),0)) 
'Ctrl+Shift+Enter 

p.s:あなたが行には、UpperBound知られているいくつかの列を制限した場合、それはすなわちC2:C1000C:CのinteadとB:BA:Aに同じ、はるかに高速になります。

+0

こんにちはA.S.H、 条件(修復日>診断日)が真であるため、特定のFINの最も古い診断日が私にわかりました。しかし、私は最も古い値ではなく、特定の修復日に最も近い診断日を望んでいます。 –

関連する問題