

エクセルで現場ごとに日報を作成しています。
(現場単位で、2~3ヶ月で1つの日報ファイルを作成しています)
1日1シートで作成し、シート名は日付(例:1月2日なら「0102」)でつけています。
毎日かかった経費と、その日までの合計(累計)の経費をだしたいと思っています。
その日の金額(A1)に、前日までの累計の金額(一つ前のシートのA2)を足して、その日までにかかった経費を(A2)に表示させたいと思い
色々と調べて以下の方法にたどり着きました。
名前の定義に「前シート」として、参照範囲に
「=MID(INDEX(GET.WORKBOOK(1)&T(NOW()),GET.DOCUMENT(87)-1),FIND("]",INDEX(GET.WORKBOOK(1)&T(NOW()),GET.DOCUMENT(87)-1))+1,31)」を入力し
累計を求めたいセル(A2)には
「=INDIRECT("'"&前シート&"'!A2")+A1」と関数を入れました。
これで一応でるようにはなったのですが、エクセルを閉じて、再び開くと
A2には「#NAME?」と表示されてしまい
また名前の定義を設定し直さなければなりません。
私一人が使うわけではなく年配の上司も見るので、できれば開くたび、数字が表示されるようにしたいのですがどうすればよいでしょうか?
ちなみに、他の名前の定義を使用している関数については、再び開いても数字が表じされています。
あともうひとつ・・・名前の定義以外で同じように累計を計算する関数はありますか?
よろしくお願いします。
No.3ベストアンサー
- 回答日時:
No2です。
>簡単に、関数で一つ前のシートのセルを参照する方法が知りたいです。
ひとつ前のシートを参照する関数はありませんが Cell関数を紹介します。
仮に
現在のシート名が 1113 となっていて 前のシート名が 1112 となっているとします。
1113のA1セルに =CELL("filename",A1) と入れてみてください。
そのファイルのパス、ブック名、シート名 が表示されます。
A2セルに =MID(A1,FIND("]",A1)+1,4) と入れるとシート名(この例では 1113)が表示されます。
A3セルに =TEXT(DATE(2010,LEFT(A2,2),RIGHT(A2,2))-1,"mmdd") とすれば前の日付のシート名
A4セルに =INDIRECT(A3 & "!A1") 前の日付のシートのA1の値です。
もちろん一つのセルに記述することもできますが、かなり長くなると思います。
この方法で前の日付のシートを参照することが出来ますが
もし休日などで前の日付のシート名がなければエラーです。
これを応用しますが
別途、シート名の一覧表を準備しておけば如何でしょうか?
シート名一覧シート
A
1111
1112
1115
1116
・・・・
と準備して
A5セルに =INDEX(シート名一覧!A1:A100,MATCH(A2*1,シート名一覧!A2:A101))
として 1113よりひとつ上の行の値を検索して Indirect関数で使います。
ところで、新しい日付のシートは毎日ひとつづつ作成されているのでしょうか?
例えば
VBAを使って ボタンを押せば新しいシートが作成される。
作成されたシートに所定の日報のフォーマットを貼り付ける。
作成されたシートの名前を変更する。
累積を出したいセルに 前日までの累計を計算させて入れる。
上記のボタンを作成しては如何でしょうか?
シートを準備する作業から簡素化できますし、ついでに累計が自動で入るだけのことです。
私としては、先に紹介したように
データのシート
日付 天気 機械名 コメント 労務費 機械費
11/12 晴れ A ごめん 100 200
・・・・
とデータが入るような仕組みと検索して表示させる仕組みを考えて方が全く便利だと思います。
例えば
入力シート
日付 11/12
天気 晴れ
機械名 A
コメント ごめん
労務費 100
・・・と入れておいて ボタンを押せば データのシートに追加される
表示のシート
入力シート
日付 11/12
天気
機械名
コメント
労務費
と日付を入れると 必要な情報が表示される Vlookup関数やSumif関数を配置します。
ほかにも金額などは 月集計ができたりグラフにできたり便利になるはずです。
No.2
- 回答日時:
>できれば開くたび、数字が表示されるようにしたいのですがどうすればよいでしょうか?
VBAの力を借りれば簡単に出来ますが如何でしょうか?
VBAのイベントに Bookを開いたときに実行されるイベントがありますので
そこに 西条のシートに 2番目以下の合計を入れることになります。
別の提案ですが
>1日1シートで作成し、シート名は日付(例:1月2日なら「0102」)でつけています。
>毎日かかった経費と、その日までの合計(累計)の経費をだしたいと思っています。
ここから直します。
データを一枚のシートに日付と一緒にひたすら縦方向に入れていきます。
上司に見せるシートに集計する期間を入れるセルを準備して
そこで指定した期間の合計が表示させる式を準備したら使いやすいと思います。
例えば
指定した日付の一覧がほしければ 同じ日付を
指定した月の合計がほしければ その月の最初の日から最後の日にする
と云ったように使います。
多分、一つのファイルで何年分も管理できますよ。
早速の回答ありがとうございます。
質問の仕方が悪くて申し訳ありません。
質問を簡略化するために、かなり説明を省いてしまいましたが
実は累計をだしていくのは1つだけではなく
労務費・機会費など、○○費がいくつもあり
他にも、現場の内容(天気や使用した機会名、コメント等)を記載している為
計算するためだけの表形式ではなのです。
上司も金額だけではなく、それら全てをチェックしています。
ですので、今ある日報の状態で
関数などで管理できればと思い質問させていただいました。
本当にすみません。
簡単に、関数で一つ前のシートのセルを参照する方法が知りたいです。
No.1
- 回答日時:
前日経費の明細なら「範囲」指定でしょうけど、合計だけでいいなら参照するセルは1つなので、単純にしたらいいんじゃないでしょうか?
数式を入れるのも間違いないと思いますが、
本日のシートの入力セルに「=」と入れておいて、前日のシートにジャンプし、参照すべき「合計」のセルをクリック。エンターすれば、同じ数字が現れます。
後はそのセルに続きの数式を入れるも良し、別のセルで計算するも良し。。。。
と言う訳にはいきませんか?
早速の回答ありがとうございます。
質問の仕方が悪くて申し訳ありません。
質問を簡略化するために、かなり説明を省いてしまいましたが
実は累計をだしていくのは1つだけではなく
労務費・機会費など、○○費がいくつもあり
場所もバラバラにあります。
そして現場も1つではないため、日報も現場の数だけ作成しています。
それらを手入力で毎日やっていくのは間違えそうで心配です。
ですので関数などでできればと思い質問させていただいました。
本当にすみません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Excel(エクセル) エクセルの日報作成について 3 2023/07/05 12:49
- Excel(エクセル) シート参照を含む数式を連続コピー 3 2022/12/10 11:42
- Excel(エクセル) エクセル バーコード作成で他のシートを参照するには? 2 2023/05/03 16:57
- Excel(エクセル) Excel シート複数 金額日計表と日付 簡単にシートコピーしたら前日の残高と日付を変更させたい 1 2022/07/15 22:10
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
- Excel(エクセル) 前の(左隣の)シートを連続参照するように、あとから変更したい 1 2023/02/22 00:51
- Excel(エクセル) エクセルで割り振りをする方法 7 2022/08/02 14:02
- Excel(エクセル) Excel セルに入っている日付を参照して、別シートのリストを表示させたい 1 2022/04/12 17:02
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセルで前のシートを連続参照したい
Excel(エクセル)
-
至急お願いします。エクセルシートコピー追加 累計計算を自動でしたい
Excel(エクセル)
-
前の(左隣の)シートを連続参照するように、あとから変更したい
Excel(エクセル)
-
-
4
エクセルを利用して、日計と累計を毎日作成する方法
Excel(エクセル)
-
5
エクセル複数シート(1年)に1つ前のデータをもとに、(毎月)順に累計を出す関数の入れ方
Excel(エクセル)
-
6
EXCELで複数のシートの日々の累計
UNIX・Linux
-
7
エクセルで日報 累計を計算したい
Excel(エクセル)
-
8
エクセルで、「1つ前のシート」を指定したいのです。
その他(Microsoft Office)
-
9
EXCEL:同じセルへどんどん足していく方法
Excel(エクセル)
-
10
エクセル!常に隣のシートを参照する数式をおしえて
UNIX・Linux
-
11
Excel シート複数 金額日計表と日付 簡単にシートコピーしたら前日の残高と日付を変更させたい
Excel(エクセル)
-
12
エクセルの営業日報で累計を残す方法
Excel(エクセル)
-
13
エクセルの日報作成について
Excel(エクセル)
-
14
エクセルで、月によって参照するシートを自動的に変える関数
Excel(エクセル)
-
15
Excelで金銭出納帳。繰越残高を翌月へ・・・
その他(パソコン・スマホ・電化製品)
-
16
エクセルで左隣シートの特定のセルの値を表示させたい
Excel(エクセル)
-
17
エクセルで表示形式の時刻の「0:00」を表示しないようにするには?
Excel(エクセル)
-
18
エクセル 指定した月のデータを自動的に反映させられる方法
Excel(エクセル)
-
19
毎日の日計を別シートに自動で更新、反映させたい
PowerPoint(パワーポイント)
-
20
別シート参照のセルをシート毎にずらしたいです
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
特定のセルだけ結果がおかしい...
-
エクセルの複数シートの保護を...
-
前の(左隣の)シートを連続参...
-
特定のシートの削除を禁止した...
-
別シート参照のセルをシート毎...
-
エクセルで前シートを参照して...
-
Excelで金銭出納帳。繰越残高を...
-
エクセル 計算式も入っていない...
-
エクセルでファイルを開いたと...
-
EXCEL:同じセルへどんどん足し...
-
VBAで条件によりフォントサイズ...
-
エクセルVBAでパスの¥マークに...
-
シート番号からシート名を取得する
-
EXCELで1ヶ月分の連続した日付...
-
VBAでシートコピー後、シート名...
-
EXCELで同一フォーマットのシー...
-
Accessのスプレッドシートエク...
-
Excel、同じフォルダ内のExcel...
-
シート名が変わっても計算したい
-
エクセルで前のシートを連続参...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
特定のセルだけ結果がおかしい...
-
エクセルの複数シートの保護を...
-
前の(左隣の)シートを連続参...
-
別シート参照のセルをシート毎...
-
エクセルで前シートを参照して...
-
Excel、同じフォルダ内のExcel...
-
特定のシートの削除を禁止した...
-
EXCEL:同じセルへどんどん足し...
-
エクセル 計算式も入っていない...
-
Excelで金銭出納帳。繰越残高を...
-
複数シートの特定の位置に連番...
-
エクセルでファイルを開いたと...
-
シートの保護のあとセルの列、...
-
Accessのスプレッドシートエク...
-
VBAで条件によりフォントサイズ...
-
VBAでシートコピー後、シート名...
-
エクセルで前のシートを連続参...
-
エクセルVBAでパスの¥マークに...
-
EXCELで同一フォーマットのシー...
-
Excelで同じシートのコピーを一...
おすすめ情報