プロが教える店舗&オフィスのセキュリティ対策術

HYPERLINK関数の「文字列」について
調べましたがさっぱりわからず、悩んでいます。

現在Sheet1のB1に

=HYPERLINK("#Sheet"&ROW(A2)&"!A1",Sheet2!A1) 

というように、Sheet2のA1にジャンプし、
Sheet2のA1が表示されるように、式を入力しました。

Sheet2のA1には文字が書かれています。
Sheet1のA1には何も書かれていません。

その式を連続コピーして、
B2を押すとSheet3のA1にジャンプし、Sheet3のA1の文字を表示する、
B3を押すとSheet4のA1にジャンプし、Sheet4のA1の文字を表示する、
というようにしたいのですが、

コピーすると
=HYPERLINK("#Sheet"&ROW(A3)&"!A1",Sheet2!A2)
=HYPERLINK("#Sheet"&ROW(A3)&"!A1",Sheet2!A3)
このように、Sheet2のA2の値を返す というように
コピーされてしまいます。

理想としては
=HYPERLINK("#Sheet"&ROW(A3)&"!A1",Sheet3!A1)
=HYPERLINK("#Sheet"&ROW(A3)&"!A1",Sheet4!A1)
このように、A1は変わらず、シートの数字が1つずつ増えてほしいのです。

多少の関数はわかりますが、マクロはさっぱりわかりません。
関数を使うことで、こんなことは可能なんでしょうか?

説明が下手なんですが、どなたかわかられる方、教えてください(@_@)

A 回答 (2件)

HYPERLINK関数同様、INDIRECTを使います


=HYPERLINK("#Sheet"&ROW(A2)&"!A1",INDIRECT("Sheet"&ROW(A2)&"!A1"))
    • good
    • 1
この回答へのお礼

そのままコピー&ペーストさせていただきましたところ、
私の理想どうりのものができました!!
INDIRECT関数なるものを初めて使用しました。
これから勉強したいと思います。どうもありがとうございました!

お礼日時:2009/01/08 08:05

リンク先と同様に=HYPERLINK("#Sheet"&ROW(A2)&"!A1","Sheet"&ROW(A2)&"!A1")として下方向にコピーで如何でしょうか。

    • good
    • 0
この回答へのお礼

mu2011様の方法で試したところ、”SHEET!A1”と表示されてしまうようです。
これから関数をもっと勉強していきたいと思います。
ご回答どうもありがとうございました!!

お礼日時:2009/01/08 08:07

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