こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセルでシート名をセルに入力しておき、そのセルの内容を使ってシートを参照したいのですが

タイトルのとおりです。

シートは1~31日で1ヶ月分作りました。
まとめ表は、32枚目のシートに作ります。

32枚目のシートのセルに
SUM('1日'!A1:A5)
SUM('2日'!A1:A5)



と入力するよりも、1日、2日というシート名の
部分を32枚目のシートのA1~A31までに見出し?としてセルに文字を入力しておき、
それを関数に利用したいのですが、どのようにしたらいいのでしょうか?

投稿日時 - 2005-09-14 12:04:00

QNo.1648475

困ってます

質問者が選んだベストアンサー

INDIRECT関数を使います。

A1セルに”1日目”、
A2セルに”2日目”、
・・・・・・
と入力されていて、
B1セルに1日目のA1:A5の合計を出すとすると、B1せるに

=SUM(INDIRECT(A1&"!A1:A5"))

と入れます。この式をB31までコピーします。

注意としては、セルに入れた、○日目とシート名の○日目の
○の数字の部分の全角、半角を揃えておくこと。
違うとエラーになります。

投稿日時 - 2005-09-14 12:34:37

お礼

ご回答ありがとうございました。
たいへん参考になりました

投稿日時 - 2005-09-14 13:34:51

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

1日,2日が文字列なら
=SUM(INDIRECT(A1&"!A1:A5"))
1日,2日が日付形式なら
=SUM(INDIRECT(TEXT(A1,"d日")&"!A1:A5"))
1日,2日が数値で表示形式をユーザー定義で 0日 なら
=SUM(INDIRECT(A1&"日!A1:A5"))

投稿日時 - 2005-09-14 12:32:58

お礼

ご回答ありがとうございました。
たいへん参考になりました

投稿日時 - 2005-09-14 13:34:39

あなたにオススメの質問