2017-02-04 6 views
1

複数の値を含む複数の項目(太字)のSheet2があります。シート1(下)私はB2のために、この式を使用してこれらの値を返す必要がで Excelでシート全体のHLOOKUP値を返す

Sheet2

:!

= IF(A2 = 0、HLOOKUP($ A2、Sheet2の1:1048576 、RIGHT

及びC2の

= IF(B2 = 0、HLOOKUP($ A2、シート2 1 +1,0))($ 1,2 B):1048576、RIGHT (C $ 1,2)+1,0))

B6

FOR

= IF(A6 =​​ 0、HLOOKUP($ A6、シート2 1:1048576、RIGHT($ 1 B、 2)+1,0))

Sheet1

しかし、あなたが見ることができるように、それは最初のテーブル(A、B、C、D)の '行' を返し、ない以下の表( E、F、G、H)私は非常に単純な変更だと思うが、まだそれを見つけることはできない。

答えて

0

サンプルデータが実際のデータセットを正確に表していないと思われるため、転記されたINDEX functionHLOOKUP functionを置き換える可能性があります。

サンプルのSheet2:!の

group A group B group C group D 
A-001 B-001 C-001 D-001 
A-002 B-002 C-002 D-002 
A-003 B-003 C-003 D-003 
A-004 B-004 C-004 D-004 
A-005 B-005 C-005 D-005 
     B-006 C-006 D-006 
     B-007 C-007 
       C-008 
       C-009 

group E group F group G group H 
E-001 F-001 G-001 H-001 
E-002 F-002 G-002 H-002 
     F-003  

Sheet1のB2の式:

=INDEX(Sheet2!$A:$D, COLUMN(B:B)+INT((ROW(1:1)-1)/4)*11, MOD(ROW(1:1)-1, 4)+1)&TEXT(,) 

コピーするか、右下の両方を埋めます。長さ0の文字列を解決すると、INDEXは空のセルに遭遇したときにゼロを戻さなくなります。 INT/MOD/ROW/COLUMN関数は、INDEXの行番号と列番号を解決する簡単な数学的操作です。

enter image description here

+0

これは金です!私はまだそれを把握しようとしていますが、なぜROW(1:1)-1)/ 4)* 11と&TEXT(、)ですか?どこでこれをさらに調べることができますか?詳細については、あまり情報を提供していないリンク。あなたの助けに非常に感謝します。 –

+0

これについてもっと勉強したいと思っています。あなたは親切にいくつかの本を提供することができますか? –

+0

'TEXT(、)'は長さゼロの文字列を解決する別の方法です。例えば'' ''。未使用のセルに '= INT((ROW(1:1)-1)/ 4)* 11'を入れ、INDEX関数に戻された行番号をどのように調整するかを確認してください。 Btw、Sheet2のデータが頻繁に変更された場合、挿入された行または削除された行を自動的に補正するには、INT((ROW(1:1)-1)/ 4)* Sheet2!ROW(11:11)オフセットする。私が公式のsupport.office.comドキュメントのために私の答えで提供したすべてのリンクを確認してください。 – Jeeped

関連する問題