
excelで当番表を作っています。
カレンダーの中に毎日「お昼当番」と「朝礼当番」を入れています。
「お昼当番」と「朝礼当番」のメンバーは若干違います。
7月
2日 3日 4日 5日 6日
A B C D E
C B A C B
9日 10日 11日 12日 13日
F G A B C
A C B A C
・・・・
このとき、3日や13日のように同じ人が当番が重なることがありますが
これは避けたいと思っています。
いつもこのカレンダーの作成を行う際、
コピペを間違って誰かが途中抜けてしまったり、
同じ人が重なってしまうことを見落とすことがあります。
このようなカレンダーの作成を自動で行う方法はあるでしょうか?
難しいと思いますが、ご助力お願い致します。
No.3ベストアンサー
- 回答日時:
原則として
「お昼当番」がA→B→C→D→E→F→G
「朝礼当番」がC→B→A
という順番で繰り返すという感じでしょうか。ですが、3日や13日のように重複する日が出てしまうので、これを避けたいということですよね。
これを「自動的に行う」ということであれば、3日のような例外処理もあるので、VBAでプログラムを作成するという必要があるでしょう。こちらについては、諸条件を明確にしていく必要がありますので省略します。
ですので、もう少し手順を簡単にするという方向性でしょうか。
現在は、コピペで名前を入力しているみたいですが、もしかしたら「入力規則」を使って、選択リストから名前を選択入力するようにしたほうが便利かもしれません。
お昼当番などの欄を選択して[データ]→[入力規則]コマンドを利用し、[入力値の種類]を「リスト」にして、[元の値]欄に「A,B,C,…」のように名前をカンマで区切って入力します。するとセルを選択した際に、[▼]ボタンが表示され、このボタンから人名を選択入力できるようになります。これは、人名がどれだけ規則的に繰り返されるのかによって、コピペとどっちのほうが簡単なのか、変わってくるでしょう。
そして、No.1の方の回答にあるように、COUNTIFで回数を表示するようにしておくといいと思います。
もう1つの「重複チェック」に関しては、新たな行を設ける以外に、「条件付き書式」を利用する方法があると思います。
「2日」のセルがA1セルと仮定すると、下欄のCから始まる「朝礼当番」は、A3~D3に相当しますね。このセル範囲を選択しておいて、[書式]→[条件付き書式]コマンドを実行します。
ダイアログが表示されたら、[セルの値が」「次の値に等しい」「=A2」と設定します。最後の「=A2」は、ワークシート上の「A2」セルをクリックすると「=$A$2」となりますので、[F4]キーを3回押して「=A2」とします。
その後、[書式]ボタンをクリックして、表示されたダイアログの[パターン]パネルで好みのセルの色を設定してください。
[OK]ボタンをクリックしていってダイアログを閉じると、上の「お昼当番」と同じ人名の場合は、「朝礼当番」のセルに色が付いて判断できるようになります。このA3~D3をコピーして、9日からの週などの行にも[形式を選択して貼り付け]コマンドで「書式」だけを貼り付ければ、条件付き書式の設定をコピーすることができます。
どんな方法がやりやすいか、いろいろ試してみてください。
ありがとうございます。
入力規則については使ったことがありますが、
今回の場合は逆に面倒くさいかもしれません。
重複チェックの方法は非常に参考になりました。
採用させていただきたいと思います!

No.4
- 回答日時:
数式で自動化するのも無理というほどではありませんが、
割に合うかどうかは微妙なところです。
Excelというソフトは質問文のような「折り返した表」の取り扱いが不得手なので、
まず、作業用のシート(Sheet2とします)でデータを作ります。
●Sheet2について、
1.A列に日付を入力します(休日はあらかじめ抜いておく)
A
2日
3日
4日
・
・
・
2.B列に上段のリスト(お昼当番)のメンバーを一通り入力します。
3.C列に下段のリスト(朝礼当番)をメンバーを一通り入力します。
※ココだけはご自分で重複を避けてください。
B C
A C
B A
C B
D
E
F
G
4.B列のメンバー全体を選択して下方にフィルします。
お昼当番が繰り返し表示されるハズです。
5.朝礼当番のリストに名前をつけます
挿入>名前>定義 で、名前:朝礼/参照範囲:=Sheet2!$C$1:$C$3 とする。
※朝礼当番の人数によって範囲が変わってきますので注意してください。
6.C列の末尾のセルに下記の数式を配列数式として入力(Ctrl+Shift+Enter)して下方にフィルします。
=INDEX(朝礼,MATCH(SMALL(COUNTIF(C$1:C3,朝礼)+(朝礼=B4)*999,1),COUNTIF(C$1:C3,朝礼)+(朝礼=B4)*999,0))
※C$1:C3の部分,B4の部分は朝礼当番の数によって変わります。
朝礼当番が、お昼当番との重複を避けて、これまでで最も回数が少ないものから表示されるハズです。
●作成したデータをカレンダーに表示する。
※あらかじめ日付が入力されているものとします。
※B3セルが"2日"だったとします。
7.B4セル:=VLOOKUP(B3,Sheet2!$A$1:$C$999,2,0)
として、お昼当番の部分すべてにコピー
8.B5セル:=VLOOKUP(B3,Sheet2!$A$1:$C$999,3,0)
として、朝礼当番の部分すべてにコピー
(Excel2003で動作確認済)
excelは「折り返した表」の取り扱いが不得手ということ、
知りませんでした。
(何か方法があるのかと勝手に思っていました。)
予想以上に複雑な式が必要になるようですね・・
次回の当番表作成まで少し時間があるので、それまでに勉強して
参考にさせていただきたいと思います。
ありがとうございました!
No.2
- 回答日時:
> コピペを間違って誰かが途中抜けてしまったり
ユーザー定義のデータもオートフィルができますので、順番が決まっている場合は、記載漏れをなくすことができますよ。
「オートフィルって?」
http://www.nct9.ne.jp/poporu/11.html
の最後の方をご参照ください。
重複をなくすには、#1の方のご回答がよいと思います。
実はオートフィルも使おうとしたことがあるのですが、
今回の場合メンバーが重なっているけど順番が違う二つのグループがあるため
オートフィルを登録したとき、1つのグループが自動で
選ばれて困ってしまいました。
(日本語が伝わりにくいでしょうか・・
しかしこれも何か方法があるのでしょうか?)
アドバイスありがとうございました!
No.1
- 回答日時:
自動で行うには、決まりが必要です。
どういう決まりで どの人にするのか・・・です。
それより
見落としを しないようにするほうが いいのでは?
>コピペを間違って誰かが途中抜けてしまったり、
Aから順にGまで
Aの人のセル
=COUNTIF(A1:F7,"A")
Bの人のセル
=COUNTIF(A1:F7,"B")
というように 誰が 何回 割り当てられたか 一目瞭然にする。
>同じ人が重なってしまうことを見落とすことがあります。
2日
A
C
の下に
=if(a2=a3,"","×")
というように A2に入っている A と A3に入っている Cが 一緒なら
×を 表示して わかりやすくする。
こういう工夫をしたら チェック漏れは なくなるでしょう。
>それより
見落としを しないようにするほうが いいのでは?
確かにそのとおりです。
カウントするという方法は全く思いつきませんでした。
採用させていただきます!ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 当番表の作成 2 2022/06/15 07:40
- Excel(エクセル) 【Excel関数】カレンダーで文字が入っていたら転記 4 2023/07/24 23:28
- Excel(エクセル) エクセルで当番表を作成したいです。 1 2023/08/09 19:53
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) エクセルでカレンダーを作りたい 5 2023/05/16 07:32
- Visual Basic(VBA) excel2016でリストからカレンダーに内容を反映させたいです 2 2022/10/27 15:32
- Excel(エクセル) エクセルで不可日と祝祭日の考慮してランダムに毎日の当番表を作成したいと思っています。 1 2023/07/12 21:14
- 健康保険 傷病手当金の申請について 3 2022/07/09 09:14
- Access(アクセス) Access DTPickerの初期表示月を変えたい 1 2022/08/02 08:55
- 会社・職場 職場のシフト変更について 正社員で働いています。 私の職場では月間シフトが作られた後に、数日単位で日 4 2022/12/05 05:18
このQ&Aを見た人はこんなQ&Aも見ています
-
それもChatGPT!?と驚いた使用方法を教えてください
仕事やプライベートでも利用が浸透してきたChatGPTですが、こんなときに使うの!!?とびっくりしたり、これは画期的な有効活用だ!とうなった事例があれば教えてください!
-
初めて自分の家と他人の家が違う、と意識した時
子供の頃、友達の家に行くと「なんか自分の家と匂いが違うな?」って思いませんでしたか?
-
モテ期を経験した方いらっしゃいますか?
一生に一度はモテ期があるといいますが、みなさんどうですか? いまがそう! という方も、「思い返せばこの頃だったなぁ」という方も、よかったら教えて下さい。
-
あなたなりのストレス発散方法を教えてください!
自分なりのストレス発散方法はありますか?
-
一番好きなみそ汁の具材は?
みんなで大好きなみそ汁の具材について語り合おうよっ!
-
エクセルで作成したカレンダーに「当番の名前」を自動的に入力する方法をお
その他(Microsoft Office)
-
エクセル 当番表の作り方 エクセルで土日祝日を除いた、平日のみの当番表を作りたいです。 カレンダーま
Excel(エクセル)
-
エクセルで少し複雑な当番表を作成したい。
Excel(エクセル)
-
-
4
C列にF列の担当者(A〜)を順番に入れて、当番表を作りたいです。 C列にいれる数式を教えてください。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel 偶数月の15日(土日祝...
-
Excelの数式について教えてくだ...
-
Excelのメニューについて
-
VLOOKUP FALSEのこと
-
エクセル内に読み込んが画像の...
-
【マクロ】1回目の実行後、2...
-
勤務外時間を出す表が作りたい
-
Excelで作成した出欠表から日付...
-
エクセルの数式について教えて...
-
【マクロ】参照渡しとモジュー...
-
Excelの条件付書式について教え...
-
【マクロ】シート追加時に同じ...
-
マクロを実行すると、セル範囲...
-
【マクロ】参照渡しについて。...
-
Excel 日付の表示が直せません...
-
エクセルで、数字の下4桁の0を...
-
【マクロ】Call関数で呼び出し...
-
別のシートの指定列の最終行を...
-
Excelのデーターバーについて
-
Excelでの文字入力について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】重複する同じ行を、...
-
Excelの条件付き書式のコピーと...
-
vba 印刷設定でのカラー印刷と...
-
VBA の単語の意味を教えて下さい。
-
Excel 日付の表示が直せません...
-
エクセル 同じ行の隣り合う数字...
-
エクセル条件付き書式について。
-
エクセルの数式につきまして
-
ファイル名の変更
-
エクセル 数字のみ抽出につて
-
Excelの開始ブックを固定したい...
-
エクセルの数式について教えて...
-
エクセルのセルをクリックする...
-
=INDIRECT(RIGHT(CELL("filenam...
-
エクスプローラーで見ることは...
-
Excelの関数で質問です
-
至急お願いいたします 屋上の備...
-
エクセルでセルに入力する前は...
-
関数を教えて下さい
-
Excel 関数での質問です
おすすめ情報