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

 次の式をもっとスマートにする方法はないでしょうか。
=INDIRECT(MID("ABCDEFGHIJKLMNOPQRSTUVWXYZ",COLUMN()-4,1)&ROW())
(現在のセルから左に4番目のセルの値を返す)
column()の返値がR1C1形式のCの数値で返ってしまうため、indirect()がうまく使えないのです。そこで、columnの値をABCに変換しました。一応使えるのですが、ながななしくなるし、AA, ABとかまで対応できるようにするにはもっと複雑にしなければならないのです。お知恵をお貸し下さい。

A 回答 (2件)

offset ではどうでしょうか



d1=offset(d1,0,-4)

で、A1 の値を返す
    • good
    • 0
この回答へのお礼

有り難うございました。ただ、セルを直接入れたくない(d1のところ)ので、希望通りにならないのが残念です。

お礼日時:2007/06/13 20:05

こんにちは。



#1 さんのOFFSET で十分なのですが、INDIRECT 自体をお使いになる場合は、このようになります。

=INDIRECT("R"&ROW() &"C" &COLUMN()-4,0)
 または、
 
=INDIRECT(ADDRESS(ROW(),COLUMN()-4,1))
    • good
    • 0
この回答へのお礼

ありがとうございました。indirectにR1C1とA1形式のフラグがあったのですね。大変参考になりました。

お礼日時:2007/06/13 20:02

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