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

教えてください。
=INDIRECT(A1&"!B1") のように
A1に入力されたシート名のB1セルを参照するのですが
INDIRECTではなく、他の関数(INDEX等)を使用して出来ないでしょうか?
よろしくお願いいたします。

質問者からの補足コメント

  • 回答ありがとうございます。
    ユーザー定義関数は初めて聞きました。これはマクロ有効時のみ使用可でしょうか?
    例えば、
    =IFERROR(IF($A6:$A133="","",XLOOKUP($A6:$A133,INDIRECT($R$1&"!$B$3:$B$2403"),INDIRECT($R$1&"!$D$3:$D$2403"))),"")&""内の
    INDIRECT($R$1&"!$D$3:$D$2403")をユーザー定義関数にして、上記の式に組み込むにはどうしたら良いでしょうか?
    また、INDIRECT(カッコ内)の参照セルはワークシート上で自由に変更出来るでしょうか?
    よろしくお願いいたします。

    No.1の回答に寄せられた補足コメントです。 補足日時:2022/04/20 00:39

A 回答 (2件)

=INDEX(INDIRECT(…),RowNumber,ColumnNumber)


とするのが常道かと。
    • good
    • 0
この回答へのお礼

やっぱり、INDIRECTを使用しないと難しいんですね。
回答ありがとうございました。

お礼日時:2022/04/19 23:50

こんばんは



通常の組み込み関数で、文字列をセル参照に変換できるのはINDIRECT関数くらいでしょう。
ですので、無理かと。

>他の関数(INDEX等)を使用して~
ユーザ定義関数を使っても良いのなら、その関数で可能です。
この回答への補足あり
    • good
    • 0
この回答へのお礼

ユーザ定義関数で何とかできないかやってみます。
回答ありがとうございました。

お礼日時:2022/04/21 23:02

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