• ベストアンサー

シフト表での労働時間の累計の出し方。

毎回質問ばかりで申し訳ありません。 例えばA1に社員番号を入れると、A2に社員氏名を表示するようにVLOOKUPで式を入れてます。 日々の労働時間を累計していき、AB2に当月の累計時間を表示。 AC2に各月の累計を計算するようにしています。 各月ごと12枚のシートで作っているのですが、4月度は=AB2で5月度からは=AB2+'4月'!AC2で累計していってるのですが、これだと各月でシフト表の社員の並びが変わると別の社員の前月分と合算していきます。 社員番号を呼び出して累計を求めるにはどのような計算式が有効ですか? わかりにくくてすみませんが、よろしくご教授下さい。

この投稿のマルチメディアは削除されているためご覧いただけません。

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

  • ベストアンサー
  • n_na_tto
  • ベストアンサー率70% (75/107)
回答No.1

うーん........ まだシートの構成がわからない。 こんな感じですか? 4月シート ___A__AB__AC 1___1_4月計_累計_ 2_山田__180__700_ 3___2_4月計_累計_ 4_斉藤__160__580_ 5___3_4月計_累計_ 6_鈴木__170__600_ 5月シート ___A__AB__AC 1___1_5月計_累計_ 2_山田__170__870_ 3___3_5月計_累計_ 4_鈴木__160__760_ 5___4_5月計_累計_ 6_大田___80__80_ AC2 =AB2+IF(COUNTIF('4月'!A:A,A1),INDEX('4月'!AC:AC,MATCH(A1,'4月'!A:A,0)+1)) 下方向・↓

tatsuda
質問者

お礼

すみません・・・ =AB2+IF(COUNTIF('4月'!A:A,A1),INDEX('4月'!AC:AC,MATCH(A1,'4月'!A:A,0)+1))の'4月'!の後のA:Aは何を参照してるのですか?

tatsuda
質問者

補足

全体像はこんな感じです。 また次回、細部をアップします。

その他の回答 (2)

  • n_na_tto
  • ベストアンサー率70% (75/107)
回答No.3

4.0マクロ関数の方法 [あちこちのサイトで有名だが絶滅寸前] 1. 挿入 →名前 →定義 →名前:  シート名一覧 →参照範囲: =GET.WORKBOOK(1)&T(NOW()) 2. 挿入 →名前 →定義 →名前:  シート番号 →参照範囲: =GET.DOCUMENT(87)+NOW()*0 ※これで【左隣のシートのB1セル】は、以下の式で参照可能に。 INDIRECT("'"&INDEX(シート名一覧,シート番号-1)&"'!B1") 【右隣のシートのB1セル】なら INDIRECT("'"&INDEX(シート名一覧,シート番号+1)&"'!B1") 3. 左端シート __A_ 1_10_ 2番目シート __A_ 1_20_ 3番目シート __A_ 1_30_ だとして、すべてのシートお隣のB1に B1 =A1+IF(シート番号>1,INDIRECT("'"&INDEX(シート名一覧,シート番号-1)&"'!B1")) 4. これでB1に累計 左端シート __A_B_ 1_10_10_ 番目シート __A_B_ 1_20_30_ 3番目シート __A_B_ 1_30_60_

tatsuda
質問者

お礼

本当にいろいろとありがとうございました。 感謝、感謝です! おかげさまで納得行く表が完成しました。 マクロを使えばもっと簡単にできるんですか? 一切マクロは使えないので、これから勉強したいと思います。 よく聞く『VBA』ってのとマクロは別物なんですか? 本屋に行っても種類がいっぱいあってどれを教科書にしていいか迷ってしまいます。 お薦めの参考書等あれば最後にお聞かせ下さい。

tatsuda
質問者

補足

おはようございます。 ん~、これはまた難しそうですね・・・ 何日かかけてチャレンジしてみます。 それと、最初に言われてた祝日リストと言うのを  http://www.eva.hi-ho.ne.jp/ohtake/excel/calender2.htm から取り込み試してみたんですが上手くいきませんでした。 いい方法をご伝授下さい。

  • n_na_tto
  • ベストアンサー率70% (75/107)
回答No.2

・A列全体という意味です。 範囲が決まっているなら、A$1:A$100などでもいいですよ。 例えばAB4+INDEX('4月'!AC:AC,MATCH(3,'4月'!A:A,0)+1)) の意味を書きます。 ・MATCH(3,'4月'!A:A,0)は 4月シートのA列最初から3を探しなさい。何番目?という意味ですので、 4月シート ___A 1___1 2_山田 3___2 4_斉藤 5___3←見つけ!5番目 6_鈴木 上の表でしたら5を返します。 ・ひとつ下にずらしましょう。 MATCH(3,'4月'!A:A,0)+1は6を返します。 4月シート ___A 1___1 2_山田 3___2 4_斉藤 5___3 6_鈴木←ひとつ下にずらして、6番目 ・その6をおみやげにして今度はずーーっと右のAC列を上から数えましょう。 INDEX('4月'!AC:AC,6)は、AC列全体の6番目は何ですか?という意味です。 4月シート ___A__AC 1___1_累計_ 2_山田__700_ 3___2_累計_ 4_斉藤__580_ 5___3_累計_ 6_鈴木__600_←AC列の上から6番目はここ。 ・最後に5月シートに引っ越します。上で抽出した600を左隣の当月計にたしましょう。 AB2+600 5月シート ___A__AB__AC 1___1_5月計_累計_ 2_山田__170__870_ 3___3_5月計_累計_ 4_鈴木__160__160+600 これで3番の鈴木さんの累計が760時間とわかりました。 以上、AB4+INDEX('4月'!AC:AC,MATCH(3,'4月'!A:A,0)+1)) の意味でした。

tatsuda
質問者

補足

ブラボー! お見事です!! 昨日はすみません、眠りに堕ちてお返事を確認もしてませんでした。 ご丁寧に教えて下さっているのに、未熟者は理解するのに時間がかかり過ぎました。 =AI11+IF(COUNTIF('5月'!A$9:A$40,A9),INDEX('4月'!AM$9:AM$40,MATCH(A9,'4月'!A$9:A$40,0)+2)) これはシート5月に入れた計算式です。 見事、私が求めている数値を導き出してくれました。 ここでもう一点質問よろしいですか? '4月'は'4月のシートの'って意味ですよね??これを'4月'ではなく、'前月の'とか'左隣のシートの'とかにできませんか? 重ね重ね申し訳ありませんが、宜しくお願いします。

関連するQ&A

  • エクセルで勤務シフト表の作成。

    エクセル表で年間の勤務シフト表を作成しております。 独自で考えて作っていってるんですが、改良したい点がいくつかあり教えて頂きたい点があります。 現在は色んなデータを入れているシートを一つと、1か月ごとのシフト表を12個用意しています。   まず、4月度のシートに『4月度』と入力したら日付と曜日が自動的に入る様にするにはどのような関数が使えますか? 12枚のシートは全て同じ書式なので、日付と曜日を空白にしておいて、自動的に表示したいのです。 付け加えるなら、日曜と祝日にはフォントもしくはセルに色をつけたいのです。 もう1点。社員ごとに労働時間の累計を出していきたいのですが、現在は表に社員番号を入力すれば氏名が表示されるようにしており、例えばA1のセルの個人の数字を来月度もA1のセルの人と合計する式しか入れていません。 これだと各月の表の社員の並びが変わった時、別の社員の数字を合計してしまいます。 社員番号を入れれば各月の労働時間を合計するにはいかがいたしたらよろしいでしょうか? 長文の上、説明不足があるやも知れませんが宜しくご教授下さい。

  • エクセル表 売上集計と割合

    お世話になります。 今日一日、職場で苦戦し、困っております。 VLOOKUPや集計など試してみましたが、分からなくなりました。 前月と、当月売上数一覧表は業務データより、抽出してます。 「当月は、前月の売上数の何パーセントになるか?」を記載した、 表を作りたいのですが、どのような方法がありますでしょうか。 ・コード・色 ・色 ・社員番号 ・担当 ・売上数 で、ワンセットです。 下記に「前月売上一覧表」、「当月一覧表」、 「作りたい表(イメージ)」を記載しました。 なお、前月、当月の表は、別シートです。 ☆前月売上一覧表 コード/ 色 / 社員番号/ 担当/ 前月売上数 1122/ 赤/ 1A/ 田中/ 50 1122/ 赤/ 2B/ 鈴木/ 150 2211/ 青/ 2B/ 鈴木/ 200 3311/ 黄/ 3C/ 高橋/ 50 ☆当月売上一覧表 コード/ 色/ 社員番号/ 担当/ 当月売上数 1122/ 赤/ 1A/ 田中/ 100 1122/ 赤/ 2B/ 鈴木/  100 2211/ 青/ 2B/ 鈴木/ 150 4411/ 紫/ 5G/ 山田/ 75    ↓↓ ☆作りたい表☆ コード/ 色/社員番号/担当/前月売上数/当月売上数/割合(%) 1122/ 赤 / 1A /田中 /  50/  100 /  50%     ~省略~ ※「割合(%)」は、(当月売上数÷前月売上数)です 初めて質問する為、記載が分かり難く、申し訳ありません。 アドバイスいただけますよう、よろしくお願いいたします。

  • エクセルでとびとびのデータの累計の出し方

    エクセルで、とびとびのデータの累計の出し方を教えてください。 例えば、たてに顧客ごとに A顧客「前月売上」 A顧客「今月売上」 B顧客「前月売上」 B顧客「今月売上」 ・・・と並べたときに、 最後の行に「前月売上累計」「今月売上累計」を作りたいのです。 =SUM(A1,A3) というように作ってもいいのですが、クリックして選択していくのは手間がかかります。また、顧客数が多いとなぜかエラーになってしまい、現状、2つ以上のSUMをつなげて累計を出したりしています。。 何か簡単に計算する方法があったら教えてください。 よろしくお願いします。

  • エクセル:シートを増やすと計算が反映されません・・

    No.465690で計算の仕方を教わったものです。(以下引用) -------------------- 今現在、 ・毎月の計算で、月ごとにシートが増えていきます。 ・毎月、当月の売上と累計を手入力しています。 例として、1月からスタートするとして <1月 sheet1>   A     B 1当月売上 150(手入力) 2売上累計 150(手入力) <2月 sheet2>   A     B 5当月売上 180(手入力) 6売上累計 330 ※分かりやすくする為、行の番号を変えてみました1.2と5.6  A.Bは列番号とお考え下さい これを、2月の当月売上だけを入力すれば、 自動的に2月の売上累計が増えるようにはできませんか? そして3月も同じく、当月売上を入力して 2月で計算された累計にプラスすることはできるのでしょうか?? ご指導お願いいたします。 -------------------- これで教えていただいた方法(2月sheet2で =sheet1!B2+B5)で 確かに計算は出来たのですが、 翌月(3月)にシートをコピーなどして増やしても sheet3の欄には =sheet1!+B5 となってしまい、 1月+3月という形になってしまいます。(当たり前なのでしょうが・・) 毎月計算式を手入力するのなら式を入れる意味が無いので・・・ なんとか「前月+今月」という計算をする方法は無いでしょうか。 シートを毎月増やしていく事から、シートの増やし方も踏まえて 教えていただけないでしょうか・・・。 <1月 sheet1>   A     B 1当月売上 150(手入力) 2売上累計 150(手入力) <2月 sheet2>   A     B 5当月売上 180(手入力) 6売上累計 330(=sheet1!B2+B5) <3月 sheet3>   A     B 7当月売上 50(手入力) 8売上累計 380 になるために・・(?)

  • エクセルでこんな計算できますか?

    今現在、 ・毎月の計算で、月ごとにシートが増えていきます。 ・毎月、当月の売上と累計を手入力しています。 例として、1月からスタートするとして <1月 sheet1>   A     B 1当月売上 150(手入力) 2売上累計 150(手入力) <2月 sheet2>   A     B 5当月売上 180(手入力) 6売上累計 330 ※分かりやすくする為、行の番号を変えてみました1.2と5.6  A.Bは列番号とお考え下さい これを、2月の当月売上だけを入力すれば、 自動的に2月の売上累計が増えるようにはできませんか? そして3月も同じく、当月売上を入力して 2月で計算された累計にプラスすることはできるのでしょうか?? ご指導お願いいたします。

  • エクセルでの累計比較

    エクセル2000を使っています。 前年:1月、2月、3月・・・12月、×月累計 当年:1月、2月、3月・・・12月、×月累計 差異:差異、差異、差異・・・差異、×月差異 前年は全欄数値で埋まります。しかし当年は当月までしか入りません。 この時、前年・当年の累計差異を「実績がある月」と「前年同月の累計」とで計算したいのです。 ※5月まで実績があるなら5月までの前年累計と差異計算をする ※5月までの累計と前年12ヶ月分累計を比較しても意味がない 現在は「前年:×月累計」欄の式の計算範囲を手作業で実績月に合わせています。これを手作業せずに計算させる方法を教えてください。

  • 賃金台帳の書き方(労働時間)

    完全月給制(欠勤・遅刻等のいわゆる勤怠控除はしない)で当月分を当月20日に支給(5月分を5月20日に支給)ということになっています。一方、時間外手当の締切日という意味で給与計算の締切日は毎月15日として、当月20日払いということになります。 平たく言えば 「毎月15日締めの当月20日支給」 ということになるでしょうか。 で、給与明細・賃金台帳には毎月の労働日数、労働時間等の勤怠を記載する必要がありますが、どう書けばいいのか迷っています。 (1)支給月 5月(5月分)  賃金計算期間 4.16~5.15  労働日数   20日(4.16~5.15の実働日数)  労働時間数  160時間  普通残業時間  15時間(4.16~5.15の時間外) という表現なのか 完全月給制なので (2)支給月 5月(5月分)  賃金計算期間 5.1~5.31  労働日数   ????  労働時間   ????時間  普通残業時間 15時間(4.16~5.15の時間外)  完全月給制の当月分を当月20日払うわけで、21日以降月末までが残っていて当月の労働日数・労働時間が確定できないわけですが・・・ うまく表現できていないかもしれませんが、なんとなく質問の趣旨は わかってもらえますでしょうか。 完全月給制の当月給与を当月20日に(ただし残業代の計算は前月16日~当月15日までの計算)払う場合、賃金計算期間、労働日数、労働時間はどう書けばいいのでしょう、ということなんですが・・・ 長々とすみません。よろしくお願いします。

  • 減価償却について質問があります。

    減価償却を勉強し始めたばかりで 会社の設備の減価償却が分かりません。 会計ソフトの明細表に記載されていることは 取得日 1993年7月 旧定率法 耐用年数15年 償却率0.142 前月未取得価額 78,712,000 2013年1月 前月未帳簿価額 3,990,265 普通償却額 52,846 当月未帳簿価額 3,937,419 当月未償却累計額 74,774,581 2013年2月 前月未帳簿価額 3,937,419 普通償却額 1,819 当月未帳簿価額 3,935,600 当月未償却累計額 74,776,400 2013年3月 当月未帳簿価額 3,935,600 普通償却額 0 当月未帳簿価額 3,935,600 当月未償却累計額 74,776,400 2013年4月 前期未帳簿価額 3,935,600 普通償却額 65,593 当月未帳簿価額 3,870,007 当月未償却累計額 74,841,993 と、なっているのですが、 普通償却額の数字がなぜこのようになるのかが分かりません。 よろしくお願いします。

  • エクセル 累計を算出する関数

    いつもお世話になっております。 下記のようなデータがあり、毎月累計を算出します。 手作業で計算範囲を変更するのではなく、関数でだせないでしょうか?   A B C D E F G 1 6月 2 4月 5月 6月 7月 ・・・・・・・3月 3 100 150 90  0 ・・・・・・・ 4 5 累計 340 A1に月を入れます。 B5に4月からA1の月(今回は6月)までの累計を出します。 今はB5の計算式を毎月変更しています。 データが4つあり、4つ位たいした手間ではないのですが、月を入れる だけで簡単に出来たらいいなと思っています。 どなたか教えて下さい。よろしくお願いします。

  • エクセルの計算式を教えてください

    会社でエクセルを表を作っているのですが、計算式が分かりません。 A B C D 1  ○月 2  4月  5月   6月  …  当月迄累計  当年度累計 3  1,000 1,500 2,000 … 上記のような表があり、実際は4月から3月まであります。 当年度累計は、4月から3月をSUM関数を使用すればいいんですが、 当月迄累計は一番上の○月を入力することによって、○月までの合計が計算されるようにしたいのです。 IF関数を使用してif($A$1=$A$2,A3,if($A$1=$B$2,SUM(A3:A4),if… と12月まで入力したんですが関数は同時に12こ使えないらしく、どうしても式を認識してくれません。 どのような計算式を入力したらいいでしょうか? 教えてください。

専門家に質問してみよう