[Excel] 複雑に入れ子になった関数の式を解読する方法
他人が作ったExcelファイルで、IFやVLOOKUPなどの関数が入れ子(ネスト)になっていて、複雑すぎて解読不能になるときがあります。
実際に私が見た例で、以下のような数式がありました。
=IF(R2="","",IF(J2="ABC",IF(VLOOKUP(D2,sheet1!$A:$G,6,0)="",VLOOKUP(VLOOKUP(D2,sheet1!$A:$I,7,0)-2,sheet1!$G:$I,3,0),VLOOKUP(VLOOKUP(D2,sheet1!$A:$G,6,0)-2,sheet1!$G:$I,3,0)),IF(R2="","",VLOOKUP(VLOOKUP(U2,sheet1!$A:$G,6,0)-2,sheet1!$G:$I,3,0))))
そんなときはあわてずに。
関数をメモ帳に貼り付けて、縦に展開してみましょう。
改行やスペースをつけると、不思議と解読できるようになります。
セルS2に入っていた関数の数式を展開
=IF(
R2="",
"",
IF(
J2="ABC",
IF(
VLOOKUP(D2,sheet1!$A:$G,6,0)="",
VLOOKUP(
VLOOKUP(D2,sheet1!$A:$I,7,0)-2,
sheet1!$G:$I,
3,
0
),
VLOOKUP(
VLOOKUP(D2,sheet1!$A:$G,6,0)-2,
sheet1!$G:$I,
3,
0
)
),
IF(
R2="",
"",
VLOOKUP(
VLOOKUP(U2,sheet1!$A:$G,6,0)-2,
sheet1!$G:$I,
3,
0
)
)
)
)
IFやVLOOKUPが入れ子になっているときに効果的抜群です。
あとは、時間さえかければ解読できますね。
以上、ワンポイントテクニックでした。
カテゴリ: