人生のプチ美学を教えてください!!

以下の説明で質問を理解していただけるとありがたいのですが...^^;

Sheet1のA1~A3に、1,2,3というデータが入っているとします。

これを、Sheet2のA1~C1に参照として表示するため、
A1 = 'Sheet1'!$A$1
B1 = 'Sheet1'!$A$2
C1 = 'Sheet1'!$A$3
のように入れると、Sheet2のA1には1、B2には2、C1には3が(ちゃんと)入ります。

ところが、Sheet1のA1のデータを「切り取り」→ A3に挿入すると、
Sheet2の内容が
A1 = 'Sheet1'!$A$2
B1 = 'Sheet1'!$A$1
C1 = 'Sheet1'!$A$3
のように勝手に変わってしまい、Sheet1のデータを入れ替えてもSheet2のデータの並びが最初とまったく変わりません。

Sheet1のデータの並びが変わっても、Sheet2のA1には常に「Sheet1のA1のデータ」が表示されるようにしたいのですが、どうすればいいのでしょうか?

A 回答 (3件)

>Sheet1のA1~A3に、1,2,3というデータが入っているとします。


>これを、Sheet2のA1~C1に参照として表示するため
ということですから、
回答番号:No.2 KURUMITOさんの式を改造して
Sheet2のA1に
=INDEX(Sheet1!$A:$A,COLUMN(A1))
A1を、~C1までコピーですね。

INDIRECT関数の場合
Sheet2のA1に
=INDIRECT("'Sheet1'!$A$"&COLUMN(A1))
となります。
A1を、~C1までコピーですね。
    • good
    • 0
この回答へのお礼

xls88さん、KURIMOTOさん、
早速の回答をありがとうございました。
INDIRECT関数というのがあったんですね。
おかげさまで、私のやりたいことが実現しました。
ありがとうございました。

お礼日時:2010/01/05 10:53

次のような式をシート2のA1セルに入力してA3セルまでドラッグコピーしてもよいでしょう。


=INDEX(Sheet1!A:A,ROW(A1))
    • good
    • 0

INDIRECT関数を使えばどうでしょうか。



Sheet2
A1 =INDIRECT("'Sheet1'!$A$1")
B1 =INDIRECT("'Sheet1'!$A$2")
C1 =INDIRECT("'Sheet1'!$A$3")
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報