[[20190307025212]] 『カレンダー勤務表』(month) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『カレンダー勤務表』(month)

テンプレートのカレンダーで勤務表作成を考えています。
勤務内容はA B C D E Fの順番は保ち、月一回Gという勤務がありA B C D E Fの間に Gと入った場合でもA B C D E Fの順番は変えないようにする。
例えばA B G C D E F A B C D E F...

          A B C D E G F A B C D E F...
といった感じです。どのような関数を使えばいいでしょうか?よろしくお願いします。

< 使用 Excel:Excel2016、使用 OS:Windows10 >


 ちょっと情報が不足気味じゃないですか?

 Gが全くない場合だったら、どう言う数式になるんですか?
  ※その数式を掲示していただければ、
   逆算して不足情報が補えるかも知れない。

 あと、各人が前月の最後に何の勤務をやったか、考えないでいいんですか?
 (前月の最後にAをやって、今月の初めにまたAからになったら不満が出ませんか?)

 他の回答者からレスが付いたら、この私のレスは無視してください。

(半平太) 2019/03/07(木) 08:41


半平太さん ありがとうございます。
Gは必ず月一回ありますがどの日にちに入るかは未定で、翌月になってもA B C D E Fの順番は維持したままになります。
例えばA B C D E(月末) F(月初)となります。
よろしくお願いします。
(month) 2019/03/07(木) 09:40

 > Gが全くない場合だったら、どう言う数式になるんですか?

 その数式はまだ出来てないんですか?

 もしそうなら、
 勤務表(セルアドレスが判るもの)に希望する結果例を図示してください。

 それが示されない場合は、分からない事だらけなので、私は降ります。

(半平太) 2019/03/07(木) 10:39


例えば、カレンダが横に並んでいて、A1に"A"、B1に"B"とあるとして、C1を「=MID("ABCDEF",MOD(FIND(IF(1<FIND(B1,"GABCDEF"),B1,A1),"ABCDEF"),6)+1,1)」とします。 C1の式は横にドラッグコピー。 "G" は式を消して直接入力してみてください。
(カレンダが縦なら、A3に式を書き、B1部分をA2に変える)
(???) 2019/03/07(木) 11:02

A1に65を入力
A2=IF(A1>=70,65,A1+1)
B1=CHAR(A1)
A2セルを下方に書式を維持したままカレンダー日数ぶんコピペ
B2セルを下方に書式を維持したままカレンダー日数ぶんコピペ
Gを挿入したい所のA列の数字を71にする
(通りすがりのおっさん) 2019/03/07(木) 11:26

半平太さん
式はできていません。どうしたらいいかわからず質問させていただきました。テンプレート「年のカレンダー」というものを使用しています。2019年1月ですと、列の英語と混乱する為、並びは1夜 2夜 3夜 明け 朝 休とします。特というのが先述に記したGとした場合
(列) A B C D E F G
(行)
4     3夜 明け 朝 休 1夜
6  2夜 3夜 明け 朝 休 1夜 2夜
8  3夜 明け 朝 休 1夜 2夜 3夜
10  特 明け 朝 休 1夜 2夜 3夜
12 明け 朝 休 1夜 2夜 

となり、空いている行は日付が入ります。この記載したものでわかりますでしょうか?このような並びの条件になった場合(特はどこに入るかはランダムに決まる)どういう式にすればいいのか教えていただきたいのです。
よろしくお願いします。

(month) 2019/03/07(木) 23:08


???さん ご指摘の通りできました。ありがとうございます。カレンダーは7日おきに下の行に変わります。

通りすがりのおっさんさん ありがとうございます。65や70は何を表しているのでしょうか?

皆さまご回答ありがとうございます。規則性がある場合、関数よりVBAのほうが指示しやすかったりするのでしょうか。
(month) 2019/03/07(木) 23:24


 (1) K4セルに、「特」の日をシリアル値で入力する
    下図は、「2019/1/20」とした例。

 (2) K5セルに、前月最終作業が何だったか入力する
    下図は、「2夜」とした例。

   ※前月最終作業が「特」のケースは想定しておりません。
    それだと月初に何を割り振るか自動判定できません。
    実際に、そんなケースがあるんでしょうか?

 (3) B4セルに下式を入力する

  =IF(MONTH(B3)<>MONTH($H$3),"",IF($K$4=B3,"特",INDEX({"1夜","2夜","3夜","明け","朝","休"},MOD(DAY(B3)+MATCH($K$5,{"1夜","2夜","3夜","明け","朝","休"},0)-1-($K$4<B3),6)+1)))

  それを、H4セルまで右へコピー

 (4) 第1週目全体をコピーして、6行目以下、偶数行に貼り付ける。

    <結果図>
   行  _A_  ____B____  ___C___  ___D___  ___E___  ___F___  ___G___  ___H___  _I_  ________J________  ___K___
   1        1 月 2019                                                             カレンダーの設定          
   2        日曜日     月曜日   火曜日   水曜日   木曜日   金曜日   土曜日        年                    2019
   3          30       31        1        2        3        4        5          週の始まり         日曜日 
   4                            3夜      明け     朝       休       1夜           月1作業日         2019/1/20
   5           6        7        8        9       10       11       12          前月最終作業       2夜
   6        2夜        3夜      明け     朝       休       1夜      2夜
   7          13       14       15       16       17       18       19 
   8        3夜        明け     朝       休       1夜      2夜      3夜
   9          20       21       22       23       24       25       26 
  10        特         明け     朝       休       1夜      2夜      3夜
  11          27       28       29       30       31        1        2 
  12        明け       朝       休       1夜      2夜                   

(半平太) 2019/03/08(金) 17:07


半平太さん 大変にありがとうございます。理想通りのものでできました。「特」が前月最終作業になることはありませんが月初になることはあります。
関数の組み合わせ難しいです。

(month) 2019/03/08(金) 20:08


半平太さんおはようございます。昨日は大変にありがとうございました。
年間のスケジュールを作成しようとご指示いただきましたものを一つのシートにまとめ(シートを選択する手間解消と1枚の紙で印刷したい為)月別に試してみたのですが表示されません。
月の日にちの関数が1月と違うためでしょうか?ヒントだけでもと思い再度質問させていただきました。
よろしくお願いします。

(month) 2019/03/09(土) 12:11


 >月別に試してみたのですが表示されません。 

 どう試したのですか?

 2月を例にご説明ください。

(半平太) 2019/03/09(土) 15:15


同じカレンダーテンプレートの2月のシートに1月と同様のセルに2019/03/08(金) 17:07のようにご指摘されたことをやってみましたが空白のまま反映されませんでした。

(month) 2019/03/09(土) 16:06


 ちょっと事態が呑み込めないです。

 >同じカレンダーテンプレートの2月のシートに1月と同様の・・

 そうなら、2月シートは1月シートとは別ですよね?

 こっちの話は、1月と同一シートと読めるんですけども・・
   ↓
 >一つのシートにまとめ(シートを選択する手間解消と1枚の紙で印刷したい為)

 訳が分からないです。

(半平太) 2019/03/09(土) 16:18


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.