あなたにとってのゴールデンタイムはいつですか?

Excelで金銭出納帳を作成し、使用していこうと考えています。

1シートがひと月分です。

当月の残高を翌月の繰越額へもっていきたいのですが、シートをコピーして使うためか、「Sheet1!A1」の数式が使えなくて困っています。

1月のシートをコピーし、2月の繰越欄には「Sheet1!A1」を手入力したのでいいのですが、3月分は2月分のシートをコピーして使用するつもりです。
そうすると、繰越欄には1月末の残高が出てきてしまいます。

毎回入力すればいいのでしょうが、できれば自動で入力させたいです。

1つのシートに複数月の出納帳は管理上不自由なため、1シートでひと月分というスタイルは崩せません。

1~12月分のシートをあらかじめ作成しておき、ひとつひとつのセルに「Sheet1!A1」「Sheet2!A1」・・・と数式を入れていくしか方法は無いのでしょうか。

繰越額だけでなく、出納帳の摘要に入れる「○月分」といった連続した数字も新しいシートにしたときに自動で連続入力できる方法はありますか?

A 回答 (2件)

>毎回入力すればいいのでしょうが、できれば自動で入力させたいです。



自分がいま何月だから,自分が欲しい「先月」は「いったいなんて名前のシートなのか」が判れば良いワケです。

一番簡単な方法として「1月はシート1」じゃなく,例えば「201301」というシート名の付け方をします。
こうしておくと自分のシート名を計算させて,例えば3月シート(201303)からは201302シートを見に行けば良いと計算できますし,1月シート(201301)から「間違って」201312シートを見に行ってしまうことも無くなります。

手順:
201301,201302シートを用意する
ブックを「必ず」一回保存しておく
「先月」が無い201301シートの先月繰越額欄には手で数字を記入する
201302シートに
=INDIRECT((RIGHT(CELL("filename",A1),6)-1&"!A1"))
と数式を記入
201202シートをコピーし,シート名を201303に変更する。





もう一つの方策としては,マクロを併用して例えば「一枚左隣のシートの指定のセル」を見に行くユーザー定義関数をブックに登録して利用する事もできます。マクロを使うこと以外は,こちらの方があなたの「希望していた内容」に近いかもしれませんが,こういう事を普段使いの中だけで行う機能は,エクセルにはありません。またこの方策では,シートが必ず例えば「左から右に並んでいる」のが前提です。


手順:
ALT+F11を押す
現れた画面で挿入メニューから標準モジュールを挿入する
現れたシートに下記をコピー貼り付ける

function getleft(byval Target as excel.range) as variant
getleft = target.parent.previous.range(target(1).address)
end function

ファイルメニューから終了してエクセルに戻る
セルに
=getleft(A1)
のように記入する。
    • good
    • 4
この回答へのお礼

お礼が遅くなってしまい、大変申し訳ありません。

マクロに関しては全く分からないのが現状ですが、これを機に勉強したいと思います。

とりあえず、INDIRECTを使用している手順を実行しました。

うまくいきました!

関数に関してもまだまだ勉強不足ですね・・・

具体的な手順までご教授いただき本当にありがとうございました!

お礼日時:2013/10/03 16:37

マクロを使えばできるんですが、それ以前に。



翌月繰り越しの残高って1種類だけですか?

種類が少ないなら、例えば「前月末残高」というセルをA1か何かに
作って置き、シート内で前月末を参照する場合、必ずA1を参照する
ようにしておけば、シートをコピーしたときに直すのは、そのA1セル
だけで済みます。

要は「シート間参照」を最小箇所にするように設計しておくってコト
ですね。

マクロを使う場合も、シート間参照は少ない方がコードが短くなるので
そういう設計はやっておく方がいいですよ。

この回答への補足

残高は1種類のみです。

その月の最終日(私の場合は給料日の前日)に計算した残高を翌月に繰り越したいのです。
繰越にこだわるのは、できるだけ正確に、月に使えるお金がいくらかというのを出したいからです。

やはり入力された数字を活かして・・・というのは無理ですかね。

私はExcel初心者なのでマクロが良く分かりませんが、これを機に習得したいです。

よろしければ教えていただけませんか?

補足日時:2013/09/24 16:04
    • good
    • 0

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

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


おすすめ情報

このQ&Aを見た人がよく見るQ&A