銀さんの何かやってます。

とにかくやってみる。

VLOOKUP関数とOFFSET関数のネスト

2010年09月14日 23時07分54秒 | Excel 関係
VLOOKUPとOFFSETでデータが増えても大丈夫! 

数式を入れるセル範囲は「G2~I10」まで

セルG2に =IF(ISBLANK($F2),"",VLOOKUP(F2,OFFSET(A2,0,0,COUNTA(A:A)-1,4),2,0))
セルH2に =IF(ISBLANK($F2),"",VLOOKUP(F2,OFFSET(A2,0,0,COUNTA(B:B)-1,4),3,0))
セルI2に =IF(ISBLANK($F2),"",VLOOKUP(F2,OFFSET(A2,0,0,COUNTA(C:C)-1,4),4,0))
とそれぞれ一列ずつ入れますが、これだと面倒なので・・・

セルG2に =IF(ISBLANK($F2),"",VLOOKUP($F2,OFFSET($A$2,0,0,COUNTA($A:$A)-1,COLUMN(B$1)+1),COLUMN(A$1)+1,0))
を入れて、I2まで数式をコピー、そのままI10まで数式を下へコピーします

更に少し付け加えて・・・F2が空白の場合は「#N/A」が返ってこないように・・・
セルG2に =IF(ISERROR(VLOOKUP($F2,OFFSET($A$2,0,0,COUNTA($A:$A)-1,COLUMN(A$1)+1),COLUMN(B$1),0)),"",VLOOKUP($F2,OFFSET($A$2,0,0,COUNTA($A:$A)-1,COLUMN(A$1)+1),COLUMN(B$1),0))
としてVLOOKUPの結果で「#N/A」が返ってきた場合は空白を返すようにします
コメント (2)
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする