【Excel】飲食店の売上日報を作成する方法

このQ&Aのポイント
  • Excelを使用して飲食店の売上日報を作成する方法について解説します。
  • Sheet1に日々の売上や仕入を入力し、Sheet2には月間の売上や仕入の一覧を表示することができます。
  • また、Sheet1のデータを更新してもSheet2に自動的に反映されるように設定することも可能です。
回答を見る
  • ベストアンサー

excelで売上日報を作りたい

飲食店です。excelでSheet1に1日の売上や仕入を入力し、Sheet2に月の売上や仕入の一覧が出るようにしたいと思ってます。加えて、Sheet1は毎日上書きしても、それがちゃんとSheet2に反映されるようにしたいです。 Sheet1のA1に日付→Sheet2のA1に反映。Sheet1のB2に仕入合計→Sheet2のB2に反映。ここで保存。 翌日、Sheet1のA1に日付を入力したら、Sheet2のA2に自動入力、Sheet1のB2に仕入合計→Sheet2のB3に自動入力。上書き保存。 というようなことです。 Sheetを31日分作るということではなく、Sheet1とSheet2のみで作成したいと思ってます。 関数のみでの作成が不可能でしたら、マクロを使っての作成でも構いません。 説明が下手で申し訳ありませんが、宜しくお願い致します。

  • kjw
  • お礼率90% (19/21)

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

エクセルを使ってデータを管理する場合にはできるだけ入力したデータはそのまま残すことです。その日に入力したデータは集計の表には残っても次の比には消されているのではのちのち検証することが起きても確認のしようがありません。 シート1では例えばA1セルに日付、B1セルに仕入、C1セルに売上の項目名が有り、実際のデータは2行目から下方に日付が変わってもそのまま入力していくことにします。 計算を簡単にするためにE列は作業列としてE2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(A2="","",YEAR(A2)&"/"&MONTH(A2)) シート2では月ごとのまとめのシートでA1セルには年月、B1セルには月毎仕入合計、C1セルには月毎売上合計とでも入力します。 A2セルには今年の4月からデータの集計をするのでしたら2011/4/1と入力し、A3セルには2011/5/1と入力します。その後にA2セルとA3セルを同時に選択してA3セルの右下隅の■をクリックして下方にドラッグします。 これらの操作が済んでからA列を選択して「セルの書式設定」から「セルの表示形式」で「ユーザー定義」を選び 種類の窓にはyyyy年m月と入力してOKします。 B2セルには次の式を入力してC2セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(SUMIF(Sheet1!$E:$E,YEAR($A2)&"/"&MONTH($A2),Sheet1!B:B)=0,"",SUMIF(Sheet1!$E:$E,YEAR($A2)&"/"&MONTH($A2),Sheet1!B:B)) このようにすることでシート1で毎日のデータを次々に入力していくことでそれぞれの月の合計額が自動的に変わります。シート1のデータを削除すればシート2のデータも変わります。

kjw
質問者

お礼

御礼が遅くなりまして、申し訳ありません。 上司と相談したところ、やはり1日1日記録を残していく事にしました。 KURUMITOさんの作成方法で作成しました。 ありがとうございました。 大変助かりました。

その他の回答 (3)

  • riri1609
  • ベストアンサー率36% (199/540)
回答No.4

No.1です。 >各仕入業者毎に入力し、それを一度プリントアウトするような形をとろうと思ってます。そして、その合計をSheet2に反映させようとかんがえていました。 でしたら、発想を逆にして、sheet1は使わずSheet2の行にタグ番号をつけて、印刷するSheetを別に作成し、そこへVLOOKUP等でデータを反映させる方法はいかがでしょうか。 私の考え方もNo.3様同様で、基本は「入力したデータはそのまま残して」いろいろ反映させる方が、後々加工がしやすいと思います。

  • nattocurry
  • ベストアンサー率31% (587/1853)
回答No.2

初日は Sheet1のA1とB2を、Sheet2のA1とB2に反映 翌日は Sheet1のA1とB2を、Sheet2のA2とB3に反映 となっていますが、レイアウトはこれで大丈夫ですか? 翌日の日付の右隣が初日の仕入合計になりますけど。

kjw
質問者

お礼

失礼しました。 Sheet1のA1をSheet2のA1、Sheet1のA2をSheet2のB1 翌日は、Sheet1のA1をSheet2のA2、Sheet1のA2をSheet2のB2でした。 すみませんでした。

  • riri1609
  • ベストアンサー率36% (199/540)
回答No.1

ちょっと疑問があり、補足していただくとありがたいのですが。 >Sheet1のA1に日付→Sheet2のA1に反映。Sheet1のB2に仕入合計→Sheet2のB2に反映。ここで保存。 >翌日、Sheet1のA1に日付を入力したら、Sheet2のA2に自動入力、Sheet1のB2に仕入合→Sheet2のB3に自動入力。上書き保存。 この程度だったら、Sheet1を使わず単にSheet2に直接入力するだけで事足りると思うのだが、ダメなんですか?

kjw
質問者

お礼

ご回答ありがとうございます。 質問に仕入合計とありますが、各仕入業者毎に入力し、それを一度プリントアウトするような形をとろうと思ってます。そして、その合計をSheet2に反映させようとかんがえていました。 なので、Sheet1に一度入力してから、Sheet2に反映させたいと考えてました。 説明不足で大変申し訳ありませんでした。 ありがとうございました。

関連するQ&A

  • Excel 数式がうまく計算されない

    飲食店勤務です。オーナーからの依頼により、1ヶ月の売上と売上累計、仕入と仕入累計の表を作成しています。 Sheet1では売上に関する表を作成しています。 A列=日付、B列=売上、C列=売上累計 Sheet1でC2に =IF(OR(B2="",C1=""),"",SUM(B2,C1))の式を入力しました。 上の式を下にコピーをしても、売上が空白の時は空白になりました。 (例) 日付_売上_売上累計 1日_500_500 2日_500_1000 3日_空白_空白 そして、Sheet2で仕入に関する表を作成しています。 仕入先などの名称入力のため、セルを結合して作成しています。 (売上表とは行が若干ずれています。) AA列=日付、AC列=仕入、AG列=仕入累計 AG5に =IF(OR(AC5="",AG4=""),"",SUM(AC5,AG4))の式を入力しました。 ですが、この式をSheet1と同じように下にコピーをすると仕入を入力してないのに、前日の仕入累計が表示されてしまいます。 (例) 日付_仕入_仕入累計 1日_500_500 2日_500_1000 3日_空白_1000 しかし、その日の仕入金額を入力すると、ちゃんと累計計算はされます。 Sheet1の数式をコピーして、セルの値を変えただけなのですが・・・ セルを結合するとだめなのでしょうか。 それとも数式が違うのでしょうか。 拙い説明で申し訳ございませんが、助けていただきたいです。 宜しくお願い致します。

  • エクセルで売り上げ表を作成したいのですが…

    エクセル98を使用しています。 月毎の売り上げ表を作成したいと思っています。 あるシート(以降、Aシート)にその月の売り上げ表を作成して、別のシート(以降、Bシート)に月毎の売り上げの履歴を残す事ができたら良いと思っています。 あらかじめ締め日を決めておき、その締め日が過ぎるとAシートの売り上げ表に記載されていた数字はクリアされると同時に、Bシートに売り上げの履歴を残すようにしたいです。 毎月設定しておいた日付けが過ぎると、シートに入力されていた数字を自動にクリアさせる方法はあるのでしょうか? また同じく、毎月設定しておいた日付けが過ぎると、その月毎の売り上げを別のシートに残すような作業はできますのでしょうか? 時間に合わせて、処理を行うといった感じになります。 時間に合わせて、入力されたデータをクリアにする。また別のシートに記録を残す良い方法がありましたら、アドバイスをお願い致します。

  • エクセルで前日までの売上を出したい

    A1~A30に日付が入っていて B1~B30にその当日の売り上げが入っているのですが 毎日Bの売上を更新した際に C1~C30に前日までの売り上げが自動で反映されるようにしたいので、やり方を教えてください。 宜しくお願致します。

  • 今日の売り上げを昨日の売り上げと合算して上書きしたい

    よろしくお願いします。 エクセル2007で一枚のシートに現在の売り上げ状況一覧が作ってあります。 入力項目だけを抜粋した別枠を作り、そこに本日の売り上げだけを入力し、一覧の数字と合算してその一覧のデータを上書きする仕組みを作りたいと思っていますが上手くいきません。 例えば本日の売り上げデータをA1に個数、B1に数量、C1に合計金額と入れたとします。 昨日までの売り上げデータがA2に個数、B2に数量、C1に合計金額が既に入っています。 A1に数字を入力するとA1+A2の合計がA2に上書きされる。 別シートや枠を作る必要があるのでしょうか。 アドバイスお願いします。

  • EXCEL VBAで売上日報作成

    下記のような場合どのようなマクロを組めばいいか教えてください。 表(1) 日付 店舗名 売上 仕入値 客数   -------------------------------- 3/1   A   100   10   20 このような表を 表(2)(別のシート) 日付 売上  3/1  10 3/2  12 3/3 100  のように置き換えるのは出来るのですが、 例えば表(1)に3/11のデータをコピペし、シート上に マクロ実行ボタンを作り、そのボタンを押すと 表(2)に必要な部分だけを抽出かつ、日付順に並ばせる 方法を教えてください。 表(1)にデータをコピペし、ボタンを押すだけで表(2)に その日の売上が表示され、月末には一ヶ月の売上の推移を見れるような形をつくりたいのです。LOOK UP関数 などでは、表(1)に3/1の分をコピペするとその日はちゃんと表示されますが、翌日表(1)に3/2分をコピペすると3/1の上に上書きされますよね。なので、3/1の下のセルに3/2分を表示するようなマクロを教えてください。

  • excelで日報を作りたい!別シートに計算結果を出す集計方法について。

    関数初心者です。日報をexcelで作りたいと考えているのですが、うまく集計ができず困っています。どなたかお助けください。 A,Bという2つのシートがあるとします。 Aのシートには横列に日付、お客様名、担当、コース代金、税金、税抜合計、合計金額、支払い方法・・・・といった項目がならんでいます。 お客様がきたらどんどん下にかきこんでいく形です。 また支払い方法という項目には、入力規則で現金、売掛、カードと 選べるようにしてあります。コース代金のところはvlookupをつかっていてコース名を選ぶと金額がはいって計算できるようになっています。 シートBには横列に日にち、縦列には、現金売計 カード売計 売掛計 税合計 本日総売上 という項目があります。 シートAで選んだ支払方法の項目ごとにシートBに自動的に合計をいれて、いきたいのです。たとえばカードを選んで合計がでたら一日の終わりにBシートで支払い方法ごとの合計、税合計、本日売上 を計算できる式をいれたいのです。 集計機能でシートAにそのまま合計をだしていこうかとおもったのですが、ここには30日分はいるのであまり煩雑になってもいやだし、シートBにSumproductをつかってみたのですが、やりかたがまずいのかうまくいきません。。ここには何をいれるというのをどなたかわかりやすくおしえていただけるとうれしいです。また、日計でこういうやり方があるというのがあればおしえてください。 どうぞよろしくおねがいします

  • エクセル

    シート1~5まであります。別に情報シートを作成しています それぞれ同じ原本から作成しています 全部のシートにA1~A10のセルに日付、B1~B10のセルに文字など入力がするところがあります 入力はA1から順番に入れていきます 例えば 保存ボタンを作成しておく シート1のA1に日付、B1に”文字”を入力し、保存ボタンをおす 情報シートに日付と内容が一致する情報がなければ、 情報シートのA列にシート名、B列に日付、C列に入力した内容が 空白のところに出力される こんな感じに作成できないでしょうか?

  • エクセルの日付自動入力について教えてください。

    エクセルの日付自動入力について教えてください。 商品の出荷情報をエクセルで作成しています。毎週月~土曜日の顧客管理を作成しており、 商品を出荷した日付が自動的に更新されるようにしたいです。 例えば、 現在今週の月曜出荷の情報だと、A1セルに6/21と手入力し、 21日が過ぎた時点(翌日22日に)に翌週の日付6/28という日付を手入力(A1セルに上書き)している状況です。この翌週の日付を自動的に同じA1セルに上書きという形で反映させることは可能でしょうか。 説明が分かりにくくて大変申し訳ございません。 データが大量にあるため、なるべく自動的に反映させたいです。 関数入力でこのようなことができるのか、ご存知の方宜しくお願い致します。

  • エクセルで条件抽出して集計

    教えてください! 日付   月  科目  金額 2006/1/1 1  売上高 5000 2006/1/2 1  売上高 1000 2006/1/3 1  仕入高 2000 2006/1/4 1  消耗品 3000 2006/1/5 1  仕入高 1000  2006/2/1 2  仕入高 1000 2006/2/2 2  売上高 5000 ・・・ という表から、seet2に下記のような表を作成し セルA1 に 1 と入力すると 科目    金額 売上高 (1月の合計値) 仕入高 (1月の合計値) 消耗品 (1月の合計値) セルA1 に 2 と入力すると 2月の集計 に変わる 3と入力すれば、3月の集計に変わる というふうに、セルA1に入力した数値(月)に対応するよう、 月を抽出して、合計値を出すには、seet2の (○月の合計値)の部分には、 どのような関数を入れればいいのでしょうか? ちなみにピボットテーブルを作成しようとすると「リストがないから作れない」 と表示されてしまうので、関数で解決したいです。 切実にお願いします。

  • エクセル 日報売上を月報売上に日付をキーにして反映

    エクセル 日報売上を月報に展開するマクロで困っております。 準備するシート (1)日報入力シート (2)月報売上シート 日報入力シートに作ったボタンを押すとB3の日付(今日)と月報売上シートA列の2~31に用意された日付(1ヶ月分)を参照する 一致した場所(B列~D列)に 入力シート B7:D7のデータを貼り付ける作業を考えております。 以下は過去の事例を参考にさせて頂きました。日付が横軸ですが、目的は縦軸です。 日報入力は1回のみですので、重複はなく1行ずらす処理は必要ありません。 ご教示頂けば助かります。 よろしくお願い致します。 Sub ボタン1_Click() Dim FRng As Range Dim Rw As Long With Sheets("月報売上シート") If Range("B3").Value = "" Then MsgBox "入力日を記入してください。", vbExclamation Exit Sub End If Set FRng = .Rows(1).Find(Range("B3").Value, lookat:=xlWhole) If Not FRng Is Nothing Then Rw = .Cells(Rows.Count, FRng.Column).End(xlUp).Row If Rw < 3 Then Rw = 3 Else Rw = Rw + 1 .Cells(Rw, FRng.Column).Resize(, 3).Value = Range("B7:D7").Value Else MsgBox "転記先日付が 見つかりません。", vbCritical Exit Sub End If End With Set FRng = Nothing MsgBox "転記しました。", vbInformation, "完了" End Sub

専門家に質問してみよう