電子書籍の厳選無料作品が豊富!

御世話になります。

Vista エクセル2007 使用

エクセルで家計簿を1月から12月までの12枚Seatで作っています。

支出の項目名が毎月3つ(例 電気・ガス・水道)あるとして、
ある月から2つ増えた場合(電話・新聞代)、
それ以降の月には5つの項目名(電気・ガス・水道・電話・新聞代)、
が表示されるようにしたいのです。

1月Seatに項目名を自分で入力する
(縦に3つ入力 A1 A2 A3セル)

2月Seatにはその3つの項目名が自動で表示されるようにする。
(縦に3つ入力 A1 A2 A3セル)

3月Seatに2つ増えたら、3つ目の下に自分で項目名を入力する。
( A1 A2 A3 までは自動表示、 A4 A5セルは自分で入力する )

4月~12月Seatには5つの項目名を自動で表示されるようにする。
(A1 A2 ・・・・A5セル)

Q)
2月SeatのA1に 「 ='1月'!A1 」と入力すると、
そのままの式が表示されてしまいます。
これは数値だけに通用する式ですか?
文字列にはどんな関数を使えばいいのでしょうか。


説明が下手ですみませんが、関数をどのように入れたらよろしいでしょうか?
教えて下さい。

関数はA1に入力する式を教えて下されば結構です。

A 回答 (5件)

1月から12月までの名のあるシートが用意されているとして一か月前のシート項目をA1セルから下方に表示させるとしたらA1セルには次の式を入力して下方にドラッグコピーします。



=IF(INDIRECT(SUBSTITUTE(TRIM(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,10)),"月","")-1&"月!A"&ROW(A1))=0,"",INDIRECT(SUBSTITUTE(TRIM(MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,10)),"月","")-1&"月!A"&ROW(A1)))

これで3月のシートで追加の項目ができれば4月のシートでは4月のシートに上の式を入力して下方にドラッグすることでその追加の項目を含めて項目が表示されます。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

2月のA1に [ =IF('1月'!A1="","",'1月'!A1) ] と半角で入力してみましたが
=IF('1月'!A1="","",'1月'!A1)  と表示されてしまうので、文字列だったのを
標準にして試してもダメでした。そこで私もINDIRECT関数ならできるかしらと思いやってみましたが難しくてできませんでした。

ご回答のようにすればできるのでしょうけど、項目数が40あるので、余りにも式が多くなってしまうので、どうにか簡単な方法でと思い質問させていただきました。
表示形式を文字列から標準にして1度ファイルを閉じた後
[ =IF('1月'!A1="","",'1月'!A1) ] を入れたところ出来ました。

KURUMITOさまの最後のアドバイスがなかったら(数年前まで私も実行していたが、年のせいかすっかり忘れていました)ファイルを1度閉じてから再度試すことはしませんでした。ちょっとしたアドバイスがとても役に立つのですね。
ありがとうございました。

ANo.5の回答だけを見て「はっ!と」気が付きました。
すぐに出来ました。
他の方にもベストアンサーにしたいのですが、KURUMITOさまの一言が私にとってベストアンサーだったので選ばさせていただきました。<(_ _)>

お礼日時:2012/05/16 09:52

回答No4です。


式が有効に働くのはいったん作られたブックを保存して再表示してからということになります。保存したものを呼び出してからでないと有効には働きません。
    • good
    • 0

2月SeatのA1をクリック


=を入力(半角)
1月Seatを開いてA1をクリック
リターンキー押下
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

表示形式を標準にしたら、1度ファイルを閉じないと有効にならなったようです。
今後ともよろしくお願いいたします。
本当に皆様のご指導には感謝いたしております。

お礼日時:2012/05/16 09:35

もしかして、2月SeatのA1の入力形式が


文字列入力になっていませんか?
2月SeatのA1を右クリックでセルの書式設定を選択して、
標準が選択されていることを確認してみてください。
その後に、同じ式を入力すれば問題は解決するはずです。
    • good
    • 0
この回答へのお礼

早速のお答えありがとうございました。

表示形式は色々なセルでいろんな設定をして作った家計簿ですので、気にして確認していました。文字列だったので、標準にして
[   =IF('1月'!A1="","",'1月'!A1)    ] を入れたのですが、
このまま表示されてしまったので質問したのですが、標準にしたら、
やはり1度ファイルを閉じなければ機能しなかったみたいです。
本当にありがとうございました。
今後もよろしくお願いいたします。

お礼日時:2012/05/16 09:32

普通に


=1月!A1
これだけで行きませんか??
数値でも、文字列でも同じ関数で行けると思いますが・・・??
    • good
    • 0
この回答へのお礼

早速のお答えありがとうございました。

文字列だったので、標準にして
[   =IF('1月'!A1="","",'1月'!A1)    ] を入れたのですが、
このまま表示されてしまったので質問したのですが、標準にしたら、
やはり1度ファイルを閉じなければ機能しなかったみたいです。
本当にありがとうございました。
今後もよろしくお願いいたします。

お礼日時:2012/05/16 09:29

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