• ベストアンサー

EXCELで年間当番表の作成

EXCELにて年間当番表の作成を検討しています。 関数で考えています。添付が年間の中の1ヶ月分のイメージです。 平日、土曜、日祝とそれぞれサイクル違います。 関数にて作成しようと考えています。 アイディアが浮かばないので、お力添えいただけませんでしょうか。 よろしくお願いいたします。 ※添付のA~Gが担当者名になります。

  • bawbe
  • お礼率4% (3/67)

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

  • ベストアンサー
  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.4

回答No.3の追加情報です。 アイデアを求めていると判断しましたので完成した表の画像を添付します。 条件 A1セルには2016と数値の西暦年を入力します。 B1セルには1と数値で対象月を入力します。 カレンダーは回答No.3で提示した通りですが2016年12月を2016年1月にしました。 J列からN列は2016年1月1日から2016年12月31日までの当番割り付けの指標です。 P1セルからS8セルはメンバーの割り付け順の一覧表です。 U列からV列は2016年の祝日一覧表です。 割付の考え方としては予め作成した当番割付の指標(平日、土曜日、日曜祝日毎に番号で順に指標を作成します。 この指標を使ってメンバーの割り付け順番の一覧表から順に引き当てます。 指標のNoの最大値は平日が247、土曜日が47、日曜・祝日が72になりました。 これらの値をMOD関数で7の除数の余りが0から6になりますのでメンバーの割り付け順の一覧表と突き合わせて該当者を抽出します。 カレンダーの日にちから曜日と祝日を割り出して指標の番号を抽出する数式が複雑な論理になりますが学習して数式を組み立ててください。 その値からメンバーを抽出する数式も1つの数式に組み込めますが長い数式になり解読が困難になるでしょう。 私の数式を提示しても論理を理解できないと思いますので提示しません。 作業用の領域を作成して数式を簡素化すればあなたにも数式を組めると思いますので挑戦してください。

bawbe
質問者

お礼

ありがとうござます。 関数と条件付き書式で対応できました。 アイディアありがとうございます。

その他の回答 (3)

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.3

>アイディアが浮かばないので、お力添えいただけませんでしょうか。 システムエンジニアに有料で依頼すべき内容です。 尚、質問に添付画像のカレンダーは日付と曜日が合っていません。 2016年12月1日は木曜日です。 手作業でカレンダーを作れない人には当番表の自動作成は無理かと思います。 回答の添付画像はExcel 2013で作成したものですが未完成です。 カレンダー部分は年月を入力すれば自動作成できるようにしてあります。 土曜日と日曜日は固定なので手動で指定色に塗りつぶしました。 祝日は該当年の一覧表が無いと条件付き書式で自動的に塗りつぶすことができません。 先ず、祝日一覧表の取得とカレンダーへの色塗りから学習されたら如何でしょう? カレンダーの作成は次のようにしました。 添付画像のA1には2016と入力し、B1には12と入力しました。 年と月の文字は表示形式で"0年"や"0月"のようにしました。 B3セルに次の数式を設定し、右へH3セルまでコピペしました。 =IF(TEXT(DATE($A$1,$B$1,1),"aaa")=B2,DATE($A$1,$B$1,1),IF(A3<>"",IF(A3<EOMONTH(DATE($A$1,$B$1,1),0),A3+1,""),IF(AND(COLUMN()=2,ISNUMBER($H2)),IF($H2<EOMONTH(DATE($A$1,$B$1,1),0),$H2+1,""),""))) B3:H3をコピーでクリップボードへ記憶させ、B5、B7、B9、B11、B13へ1行飛びで貼り付けました。 当番の自動割付は不完全な仮のものなので数式を提示しません。 参考になれば幸いです。

  • aokii
  • ベストアンサー率23% (5210/22062)
回答No.2

A1に2016/1/1と入れ下にドラッグコピーしてA列に年間365日の日にちを作り、曜日を表示して、平日のみをB列、土曜のみをD列、日祝のみをF列にコピーして、C列E列G列にA~Gの担当者7名を下にドラッグコピーして担当リストを作り、H列にB、D、F列のデータを貼付け、I列にC、E、G列のデータを貼付けてH、I列のデータを年間のデータベースにしてはいかがでしょう。

  • mt2015
  • ベストアンサー率49% (258/524)
回答No.1

補足願います。 土曜日と、日曜祝日で担当者のサイクルが異なりますが、土曜日が祝日の場合はどうします?

関連するQ&A

  • Excelにて当番表の作成をしたい

    以下の条件の当番表の作成をしたいと思っております。 他質問の回答等拝見いたしましたが、条件が合わず質問させて頂きます。 条件 ①A~Hの計8名でランダムに担当となる ②毎日1名が担当する(3ヶ月分をまとめて作成しています) ③連続しないよう、3日以上間を空ける ④個人に確認した担当不可日を設定する ⑤平日、土、日祝でそれぞれの担当最小数・最大数を設定したい(回数は一律ではなく個人個人で変わる) ⑥順番に割り当てる必要はなく、ランダムでも問題ありません なお、シフト表のように遅番・早番等はないのでそのような設定は不要です。 祝日一覧シートは作成済みです。 よろしくお願い申し上げます。

  • エクセルを使って当番表を作成したいのですが・・・

     関数を使った当番表があるのですが、改善しようと考えています。現状の当番表を作成したのは私ではなく、エクセルのレベルは決して高くありません。よい方法を教えていただければと思います。 現状・・・一つのシートに1ヶ月単位の当番表を作成しています。そのシートをもとに1日単位の当番表が出力できるように関数VLOOKUPを使用し、別のシートで1日単位の当番表を出力できるようになっています。当番の電話番号一覧のシートがあるのですが、現在1日単位の当番表に手書きで当番の番号を記入しています。  ・使用している関数=VLOOKUP($Y$8,1ヶ月当番表!:$AM$32,23,FALSE)  ※Y8に日にち(1.2.・・・31)を入力するとその日の当番が反映されるようになっています。 希望・・・1日単位の当番表に関数を使って個人の電話番号データが反映されるように改善したいと考えています。  説明が不十分かと思いますが、よろしくお願いします。

  • Excel カレンダー 当番表

    Excelでカレンダー形式で当番表を作成したいです。 平日だけ割り当てて、土日祝はなし。当番はローテーションで、20人ほどいます。 毎月作成しなければならず、できれば簡潔に関数だけで作成したいです。 どなたか、教えてください。。 宜しくお願いします。

  • EXCEL 当番表の作り方

    条件 ・13名 ・1日1名 ・曜日関係なし この条件で当番表を作成したいのですが、何か関数を使用して簡単に当番表を作ることはできますか?

  • 当番表をexcelで作成したい

    トイレ掃除の当番カレンダー表をexcelで作成したいです。 「3日づつ」交代で「8人」で回す~等の決まりで 関数やVBAなどを使って作成したカレンダーに 自動で名前が表示されるようにできないでしょうか? 「」部分は変動する場合があります。 土日祝日は休みです。 1列の物ではなく普通の市販されているような7×6マスのカレンダー表記です。

  • Excelで当番表を作成したい

    Excel2019使用 初心者です。 ネット上にある様々な回答を参考にし作成していますが、1つ問題が起きたのでご回答いただけますと幸いです。 現在、平日のみをローテーション化した当番表を作成しています。(ファイル添付) ・土日祝は月によって順番がバラバラなので手入力です。 ・祝日は別シートで「祝日」という名前で設定しています。 ・I11:J11のテーブルは「担当者表」という名前をつけています ・セルJ4~ 担当者のメンバー変更は頻繁に起こるため、毎月シート上で変更しています。 ・初日担当番号は手入力です。 ・条件付き書式で、その月に該当しない日程は表示しないように、また入力すべきセルが黄色に色がつくようにしています。 ・A4=N3-(N5-1) ・B4=A4+1 ・A5=IFS(MONTH(A4)<>$K$1,"",WORKDAY(A4-1,1,祝日)=A4,INDEX(担当者表[氏名],MOD(NETWORKDAYS($A$4-1,A4,祝日)+$N$1-$N$5,$N$6)+1),TRUE,"") 問題は、「1月と10月のみ、初日担当番号に指定した者ではなくその次の者から始まってしまう」ということです。要するに、1番(あさん)を指定しているにも関わらず、2番(いさん)から始まります。 1月と10月以外は問題なく動きます。 ズレてしまう二つの月は、月の始めが第一日曜日という共通点があり、それが理由ではないかと思うのですが…。 また、A5セルの+$N$1-$N$5,$N$6)部分が理解できていませんが、間違っていたとしても1月10月以外は正しく動くのでどうしたら良いのかが分かりません…。 ここまで読んでくださってありがとうございます。 不足している情報もあるかと存じますが、ご教示下さい。

  • 休みも考慮した月別当番表を作成をしたいです!

    掃除当番制の表の作成をしたいのですが 公休がバラバラである為、どう作成していいかわかりません;; 月別表で作成したいです(添付資料のような) 1日2人以上4人以下 休みの日は当番に入れない スタッフが17人おりますが全員各月6回当番がくるようにしたい 空白セルは色付け(グレー)で色付けしたい 当番日の間隔を4~6日空けたい 厳しいでしょうか…;;

  • エクセルの当番表を作りたいのですが

    似たような質問があると思いますが、なかなか合ったものが無かったので質問させていただきます。 1か月の活動内容が記載されたカレンダーがありまして、A列に日付が1か月分入っています。 B列に当番の名前を入れたいのですが、毎日では無くて飛び飛びになっています。 具体的には、火・木・土・日だけしか当番の名前は入りません。 月次の予定表を兼ねているので、火・木・土・日だけの表示にする事はできません。 当番は10人で、1年間同じ順番で回ってきます。 大した数ではないので今まで直接打込んでいましたが 何か自動でできるような便利な方法がありましたら教えてください。 もう一つ、C列には、管理者が入ります。 管理者は火・木担当と、土・日担当がいます。 管理者は、曜日固定でいつも同じ人が入ります こちらも何か便利な方法があれば教えてください。 よろしくお願いします。

  • エクセルの関数を教えてください

    添付しました画像で説明をさせていただきます 「表1」で「当番」が年間で決まります その当番が決まった時点で別の表2の赤背景部分に 担当者名を自動的に表示されるよう関数を入れたいのですが どのようにすればよろしいでしょうか?

  • 当番表の作成について(VBA)

    夜遅くにすみません。 マクロを使った当番表の作成に力を貸してほしいです。 文章が下手なので箇条書きにします。 •職員10人(現在) •異動、入退職があり、職員欄のような所に名前を記入して反映できるようにしたい •1人1週間の当番制 •約2ヶ月の間隔を空けて次の当番がくるようにしたい •毎年の年末年始、ゴールデンウィークはすでに担当が決まっている •万年カレンダーのような書式で印刷したい 質問内容がわかりづらいと思います。 すみません。 よろしくお願いいたします。

専門家に質問してみよう