私はこの1つのように、ネストされた関数の地獄で立ち往生したとき、私は式を分割したいですいくつかの空白。それは非常に簡単な問題をスポッティングます:
=if(
B2=1,
VLOOKUP(G2,'[Jan_Agent Hierarchy.xls]Sheet1'!$L$1:$U$4236,10,FALSE),
if(
B2=2,
VLOOKUP(G2,'[feb_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$2:$U$4214,10,FALSE),
if(
B2=3,
vlookup(G2,'[mar_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4262,10,FALSE),
if(
B2=4,
VLOOKUP(G2,'[apr_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4262,10,FALSE),
if(
B2=5,
'[may_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4234,10,FALSE),
if(
B2=6,
VLOOKUP(G2,'[jun_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4310,10,FALSE),
if(
B2=7,
VLOOKUP(G2,'[jul_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4322,10,FALSE),
if(
B2=8,
VLOOKUP(G2,'[aug_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4288,10,FALSE)
)
)
)
)
私はあなたが3つの閉じ括弧が欠落していると、引数「trueの場合、値」あなたB2=5
if
文が第二でVLOOKUPが欠落している、コメントで述べたように。
代わりに試してみてください。
=if(
B2=1,
VLOOKUP(G2,'[Jan_Agent Hierarchy.xls]Sheet1'!$L$1:$U$4236,10,FALSE),
if(
B2=2,
VLOOKUP(G2,'[feb_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$2:$U$4214,10,FALSE),
if(
B2=3,
vlookup(G2,'[mar_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4262,10,FALSE),
if(
B2=4,
VLOOKUP(G2,'[apr_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4262,10,FALSE),
if(
B2=5,
Vlookup('[may_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4234,10,FALSE),
if(
B2=6,
VLOOKUP(G2,'[jun_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4310,10,FALSE),
if(
B2=7,
VLOOKUP(G2,'[jul_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4322,10,FALSE),
if(
B2=8,
VLOOKUP(G2,'[aug_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4288,10,FALSE)
)
)
)
)
)
)
)
または:
=if(B2=1,VLOOKUP(G2,'[Jan_Agent Hierarchy.xls]Sheet1'!$L$1:$U$4236,10,FALSE),if(B2=2,VLOOKUP(G2,'[feb_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$2:$U$4214,10,FALSE), if(B2=3,vlookup(G2,'[mar_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4262,10,FALSE), if(B2=4,VLOOKUP(G2,'[apr_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4262,10,FALSE),if(B2=5,Vlookup('[may_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4234,10,FALSE),if(B2=6,VLOOKUP(G2,'[jun_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4310,10,FALSE),if(B2=7,VLOOKUP(G2,'[jul_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4322,10,FALSE),if(B2=8,VLOOKUP(G2,'[aug_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$4288,10,FALSE))))))))
最後に、あなたの代わりに、ネストされたIFのINDIRECT()
への切り替えを検討する必要があります。独自の権利で醜いですが、ネストされたif()
地獄のあなたを取得します
=vlookup(G2, INDIRECT("[" & TEXT(DATE(2000,B2,1),"mmm")) & "_Agent Hierarchy.xls]Agent Hierarchy Details'!$L$1:$U$5000"), 10, False)
:あなたの全体の式はに減少させることができます。 Indirect()
は、文字列を範囲に変更します。 B2
の数字を使用して月の省略形を決定し、それを使用してシートと範囲を参照します。Indirect()
。次に、その範囲でvlookupを実行します。
この変更の警告の1つは、Janファイルに入り、他の月ファイルと同じようにSheet1タブ名をAgent Hierarchy Details
に変更することです。この変更に関する素晴らしい点の1つは、新しい月のワークブックが追加されると、数式が自動的にそれらを取得するということです。