- ベストアンサー
HLOOKUP関数とINDIRECT関数の組み合わせについて困っていま
HLOOKUP関数とINDIRECT関数の組み合わせについて困っています。 「=HLOOKUP($A$3,[計画.xls]日付合計!$B$3:$AI$18,12,FALSE)」 上の数式だと正常に結果が得られます。 HLOOKUP関数の範囲を「計画」ファイルの「日別合計」シートのB3:AI18に 設定しています。 このHLOOKUP関数の範囲をINDIRECT関数を用いて設定したいと思っています。 ※原紙シートのF25のセルに「計画」とL25のセルに「日付合計」と入力されています。 そこで次のように入力しましたが、うまく表示されません。 「=HLOOKUP($A$3,"["&INDIRECT("原紙!F25")&".xls]"&原紙!L25&"!"&$B$3:$AI$18,12,FALSE)」 どこが誤っているか、教えていただけないでしょうか。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
INDIRECT関数はセル範囲の引数を文字列として入力する必要がありますので、以下のように数式でさせる参照する部分以外を「""」はさんで連結してください。 =HLOOKUP($A$3,INDIRECT("["&原紙!F25&"&.xls]"&原紙!L25&"!$B$3:$AI$18"),12,FALSE) ただし、INDIRECT関数を使用した場合は、参照先のファイルも同時に開いておかないと#REFエラー表示されます。
その他の回答 (1)
- KURUMITO
- ベストアンサー率42% (1835/4283)
回答No.1
次の式のようにすればよいでしょう。 =HLOOKUP($A$3,INDIRECT("'["&INDIRECT("'原紙'!$F$25")&".xls]"&INDIRECT("'原紙'!$L$25")&"'!$B$3:$AI$18"),12,FALSE)
お礼
無事に行いたいことが出来ました。 参照先のファイルを開いておかないといけないのは 寝耳に水でした。 おもしろいです。 ありがとうございました。