プロが教えるわが家の防犯対策術!

文字を表示させようと=IFERROR(INDIRECT(K4&"'!C"&L4),"")を使用しましたが
INDIRECT(K4&"'!C"&L4)がエラー(#REF!)となり「空欄」になります。これはそのような構文なので理解できます。
K4は=IFERROR(INDEX(($N$1:$R$1),1,MATCH(ROW()-1,$M$2:$R$2)),"")の構文で「sheet2」と、
またL4は=IFERROR(IF($K4="","",IFERROR((HLOOKUP(ROW(),$M$2:$R$3,2,0)),ROW()-HLOOKUP(ROW(),$M$2:$R$2,1)))+$M$2,"")で「4」を表示しています。
何が違うのか、ネットなどで調べましたが分かりません。
ただ「K4&"'!C"&L4」は「sheet2!C4」を想定していて、その場所のセルで示す文字を表示させようとしています。
しかし直接セルを指定すると「’sheet2’!C4」という文になりK4に当たる「sheet2」がクォーテーションで挟まれますので構文で示すものと「異なる」ことになるのでしょうか?
ネットにでは見つけられませんでしたが「&」を複数使用することはできないのでしょうか?
説明不足なのかも分からないところです、よろしくお願いいたします。

A 回答 (1件)

クォーテーションはいらない。



クォーテーションで囲む必要があるのはシート名に空白(スペース)を含むときだけで良い。
どうしても付けたいときには、

 INDIRECT("’"&K4&"'!C"&L4)

のように前にもつけること。

・・・
そのまえに
「sheet2」ではなく
「Sheet2」ではないだろうかと思ったりする。
    • good
    • 0
この回答へのお礼

「Sheet2」の件については、ご指摘通りです。
クォーテションはいらないとのことですが、『無し』だとエラーになります。しかし問いを見直して気がつきました。(K4&"'!C"&L4)の「"'!C"」の先頭に「’」がついていました。それでご回答の構文に修正して「"’"&K4」とWクォーテーションでクォーテーションをつけてみましたら、なんとエラーが解消されました。ありがとうございました。

お礼日時:2017/01/04 22:43

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!