2021年度以降の4直3交代のシフト表を作成したいです。
2020年のベースはこの写真のようになっています。
これは今年の初めにExcelの数式をなどを全く理解していない時に手打ちで地道に作ったものです。
シフトのサイクルは
1111休2222休3333休休です。
2021年の1月1日のシフトは
A班 休(1の次の日です)
B班 1(1日目)
C班 3(3日目)
D班 2(4日目)
としてスタートしたいです。
このシフト表をベースにして「I1」を2021.2022などと変えると自動的に1月なら3行目の曜日、5~8行目がその年の曜日やシフトに合わせて自動変換、それを12月まで変換出来れば助かります。
ちなみにシフト表の日付は固定しておきたいです。(1月なら4行目、2月なら11行目)
このようにできる数式があれば教えていただけるとありがたいです。
説明不足なところがあればおっしゃってください。よろしくお願いしますm(_ _)m
No.1
- 回答日時:
回答が付きにくいようですね。
説明するのが面倒な作りなので、それが原因かも。
関数のみで処理するとして、簡単なヒントだけの回答です。
シフト表の順番の処理の仕方には幾つかの方法がありますが、私が
作成する場合なら、CHOOSE関数を使いますね。
シフトの順番が16日間で繰り返されるので、16進数と10進数で処理
したシリアル値を使って、年間使用ができるものにします。
基本的にはシリアル値の日付から、
=CHOOSE(16進数の値,1,1,1,1,"休",2,2,2,2,"休",3,3,3,3,"休","休")
これで順番に表示されるようになります。
この日付セルを参照したB5セルに
=HEX2DEC(RIGHT(DEC2HEX(シリアル値のあるセル)))
とすることで、末尾の16進数を元に10進数の値が取得できます。
あとは、3行目または4行目のどちらかをシリアル値の日付にして、
そのセルを参照させることで対応します。
数式の例:
=HEX2DEC(RIGHT(DEC2HEX(INDIRECT("R[-"&MOD(ROW()+2,7)+1&"]C",FALSE)-(MOD(ROW()+2,7)*4+1)),1))
これで取得した値をCHOOSE関数と組み合わせをすることで、希望
するシフト表になっていると思います。
添付画像は2020年になっていますが、2021年に切り替えれば、
> 2021年の1月1日のシフトは
> A班 休(1の次の日です)
> B班 1(1日目)
> C班 3(3日目)
> D班 2(4日目)
としてスタートします。
No.2
- 回答日時:
》 シフトのサイクルは 1111休2222休3333休休 です。
2020年1月度下記の樣に始まってますね?
A→222ヤ3333ヤヤ1111…
B→11ヤ2222ヤ3333ヤヤ…
C→ヤヤ1111ヤ2222ヤ33…
D→3333ヤヤ1111休22…
1日は上記に示されたサイクルのどの位置から始めるのか、其の規則を教へて下さい。
2021年1月度は2020年12月31日の續きでなきゃアカンのですか?
其れとも新たに斯樣にすると云ふ規則でも?
No.3
- 回答日時:
私が回答できる保証はありませんが、以下質問です。
1.曜日で土、日、祝日の場合、色を付けていますが、
添付図の①のように直接文字の色を変える方法と、
添付図の②のように背景色変える方法があります。
①の方法が希望でしょうか。
2.祭日に色を付ける場合、別途、祝日用のカレンダーが必要になりますが、それはあなたが準備する必要がありますが、よろしいでしょうか。
A列 B列
2020/11/3 文化の日
2020/11/23 勤労感謝の日
のように記述したシートです。
3.Aグループが休みの日だけ、日付の背景に色がついていますが
Aグループだけ、特別扱いするのでしょうか。それとも、これは不要でしょうか。
4.シフトが休みの場合は、「休」ではなく「ヤ」を表示あってますか。
No.4
- 回答日時:
御參考迄に、
添附圖參照(Excel 2019)
Sheet1! B2: =OFFSET(Sheet2!$B2,,MOD(COLUMN(G2)-1,16))
Sheet1! B3: =OFFSET(Sheet2!$B2,,MOD(COLUMN(C2)-1,16))
Sheet1! B4: =OFFSET(Sheet2!$B2,,MOD(COLUMN(O3)-1,16))
Sheet1! B5: =OFFSET(Sheet2!$B2,,MOD(COLUMN(K3)-1,16))
【餘談】1サイクル16進でも32進でもヘッチャラだいッ!?
No.5
- 回答日時:
No3です。
1.曜日で土、日、祝日の場合、色を付けていますが、
添付図の①のように直接文字の色を変える方法と、
添付図の②のように背景色変える方法があります。
①の方法が希望でしょうか。
上記の質問は取り消します。曜日の背景は黄色なので、文字の色(土、日等)を変えるパターンになりますね。
No.6
- 回答日時:
>2.出来れば祝日も色を付けたいです。
自分で準備が出来るのか自身がありませんがもし複雑そうならカレンダーを見て自分で色付けしたいです。>3.2020年はAグループに所属しましたが2021年からは全グループの人が均等に見れるようなシフト表にするつもりです。
>4.シフト表は「ヤ」の表記でお願いします。
了解しました。土日祝日に自動で色を付けることは可能です。
私の場合、マクロでの提供になりますが、よろしいでしょうか。
その為には、あなたのexcelの環境がマクロが実行可能な状態になってる必要があります。また、マクロのついたファイルを保存するとき、
ブック名の拡張子をxlsxでなくxlsmにする必要があります。
例 Book1.xlsxがBook1.xlsmになります。
それでもよろしければ、提供します。
又その場合、今、表示しているシフト表のシート名を教えてください。
更に、祝日カレンダーのシートを予め作っておく必要があります。
シート名は”祝日”でよろしいでしょうか。
No.7
- 回答日時:
>マクロ...。
すいません初心者なのでよく分からないのですがファイル名の後に付いてるやつでしょうか??ファイル名の後につくのは拡張子です。
マクロはファイルの中に格納されます。
拡張子は添付図のxlsx,xlsmの部分です。
あなたのPCでBoook1だけが見えていてBook1.xlsxと表示されていないなら拡張子が
表示されていません。
拡張子を表示する方法は下記URLを参照してください。
windows10の場合
https://pc-karuma.net/windows-10-show-explorer-f …
windows7の場合
https://pc-karuma.net/windows-7-show-file-name-e …
No.8
- 回答日時:
マクロを登録して実行するためには
あなたのPCのexcelをマクロが実行できるようにしておく必要があります。
こちらを一通り、読んで、実際に確認してみてください。
https://www.tipsfound.com/vba/01004
No.9
- 回答日時:
このご質問は、No.1さん、No.4さんのご指摘のとおり、16個のシフトパターンが繰返すというところに注目すれば、解決できると思います。
No.1さんは16進数とCHOOSE関数を組合せ、No.4さんは基本テーブルの作成で対応しておられますが、本回答ではMID関数、MOD関数、FIND関数を組合せてみました。
日付セルに対応したA、B、C、D各班のシフト状況を表示するには添付画像①を例にとれば、B2に
=MID("ヤ1111ヤ2222ヤ3333ヤ",MOD(B$1+FIND($A2,"DCBA")*4,16)+1,1)
という数式を記述すればよいということになります。
要は日付セル(シリアル値であることが前提)を参照して1~16の値を導き、この値と班の区別によって、その日のシフトを決定するというロジックを作ればよいわけです。
そこで、シリアル値を16で割った余りをMOD関数で求めて1を加えることで1~16までを繰返すパターンを発生させます。
この値がMID関数の「文字列の中の位置」を指定してくれるように調整します。
A、B、C、D各班のシフト状況を示す、MID関数の「文字列の中の位置」と上記の1~16の数字には「ずれ」がありますのでこの「ずれ」を修正する必要があります。
「FIND($A2,"DCBA")*4」を使ってこのずれを調整しています。
このため添付画像でいうA列の「班名」とFIND関数に記述する"DCBA"は半角・全角、大文字・小文字等の相違があったり、A列に「A班」などとアルファベット以外の文字をつけたりしないようにして、必要な場合は「書式設定」で対応してください。
添付画像①として一日分のシフト状況を表示するサンプルを作成したものを投稿しておきます。
日付欄に任意の年月日を入力してみて、ご質問者が既に作成した一覧表の内容と一致するか確認してみてください。
一覧表のフォーマットは色々考えられると思いますが、年度を指定すると日付と曜日が自動的に表示されるカレンターを作成し、そのカレーンダーの日付のシリアル値を参照する上記数式を記述した表を作成すればよいことになります。
2021年分の一覧表をご質問者の作成されたフォーマットに近いもので作成してみました(添付画像②)。
この場合のB5に記述する数式は、
=MID("ヤ1111ヤ2222ヤ3333ヤ",MOD(OFFSET(B5,(2-MOD(ROW()-2,7)),0)+FIND($A5,"DCBA")*4,16)+1,1)
とすればオートフィル等でコピーしても修正不要になります。
セルの色づけについては他の回答者さんにお任せしたいと思います。
No.10
- 回答日時:
No.9です。
前回の回答で漏らしたことを追記します。前回回答の一覧用のシートでは、曜日の行および日付の行にはそれぞれ書式設定が必要です。
曜日の行にはシリアル値(日付)が入るものとして、「ユーザー設定」で「aaa」を設定することで曜日を表示させます。
日付の行にもシリアル値(日付)が入るものとして、「ユーザー設定」で「d"日"」を設定することで「○日」と表示させます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 正社員 シフト制の4班3交代勤務をしているものです。シフトは1ヶ月前に希望休を書き込んでいき、作成されてホワ 2 2022/05/10 12:19
- 労働相談 有給消化を会社にお願いしました。 今年の4月で4年目になります。会社員です。 6月にコロナのワクチン 3 2022/06/13 13:03
- アルバイト・パート アルバイトで起こった出来事 2 2023/03/01 11:18
- 労働相談 今年の4月で4年目になります。会社員です。 有給消化について質問です。 会社に10月にならないと有給 2 2022/08/27 15:51
- Excel(エクセル) 年間仕事用シフトカレンダーに、日勤 夜勤 休み に色分けをした。 4 2022/12/09 04:12
- アルバイト・パート バイト休みたい 1 2022/10/26 22:53
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/01/10 09:15
- 中途・キャリア 契約社員で在職中ですが、正社員目指して転職活動中です。 20代半ばの男です。 2社から内定を頂きまし 5 2022/04/29 13:39
- 会社・職場 こちら26歳販売員で店長をしており、4人で店を回してます。 シフトはかなり平等に通し、希望休は月3回 4 2022/12/21 00:48
- アルバイト・パート パート勤務のシフトについてお聞きします。 3 2023/02/18 11:11
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
先日、年間の4直3交代のシフト表の作成をお願いしたのですが今回は年間のシフトを元に週間の予定表に自動
Excel(エクセル)
-
Excelで4勤2休のカレンダーを作りたい
Excel(エクセル)
-
4直3交替の勤務時間について
その他(暮らし・生活・行事)
-
-
4
3交替について
転職
-
5
ExcelのVBAでシフト表を作っていますが、詰んでいます。
Excel(エクセル)
-
6
年間仕事用シフトカレンダーに、日勤 夜勤 休み に色分けをした。
Excel(エクセル)
-
7
4勤2休のシフト作成
その他(コンピューター・テクノロジー)
-
8
エクセルで、勤務表を
Excel(エクセル)
-
9
工場勤務3交代。年間休暇。悩んでます
就職
-
10
IFS関数の場合で、セルが空白の場合は何も表示しないようにする方法
Excel(エクセル)
-
11
「3交替5勤2休」ってどういうこと?
アルバイト・パート
-
12
エクセルで少し複雑な当番表を作成したい。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでの作業計算方法について
-
Microsoft1Officeの互換ソフト...
-
【マクロ】その時、その時で変...
-
はがきについて。
-
【マクロ】読取専用のファイル...
-
エクセル初心者です 関数の入れ...
-
【関数】適切な文字数の数字を...
-
LOOKUP関数を使えばいいのでし...
-
【関数】先頭だけにある、半角...
-
Excel ピボットテーブルで日付...
-
Excelのpivotについて質問です
-
時間によってファイル名が変わ...
-
エクセル 白黒印刷で白線を印刷...
-
Aというブックの1というシート...
-
エクセル関数を教えてください
-
WPS OFFICEでの縦書きについて
-
Excelのチェックボックスの使い...
-
エクセルの条件付き書式につい...
-
エクセルのセルに同じ大きさの...
-
エクセルの関数について教えて...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
[関数得意な方]教えて下さい・...
-
Excelにてある膨大なデータを管...
-
[関数について]わかる方教えて...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセル関数に詳しい方教えて...
-
INDIRECTを使わず excelで複数...
-
[オートフィルタ]で抽出された...
-
エクセルの神よ、ご回答を! エ...
-
エクセル関数に詳しい方、教え...
-
各ページの1番上の表示について
-
Excelで写真のような表を作った...
-
エクセルで不等号記号(≠)が上に...
-
数学 Tan(θ)-1/Cos(θ)について...
-
Excel 2019 は、SPILL機能があ...
-
Excelで全角を半角にしたいので...
-
条件付き書式を教えてください
-
Excel フィルターを掛けた状態...
-
[オートフィルタ]の適用範囲の...
おすすめ情報
mike_gさん
1/1は12/31の続きになります。
2021年1月1日からのシフトです(1番左)
A→ヤ2222ヤ3333ヤヤ1111…
B→1111ヤ2222ヤ3333ヤヤ…
C→33ヤヤ1111ヤ2222ヤ33…
D→2ヤ3333ヤヤ1111休22…
※2020年12月31日は1番右です。
tatsumaru77さん
2.出来れば祝日も色を付けたいです。自分で準備が出来るのか自身がありませんがもし複雑そうならカレンダーを見て自分で色付けしたいです。
3.2020年はAグループに所属しましたが2021年からは全グループの人が均等に見れるようなシフト表にするつもりです。
4.シフト表は「ヤ」の表記でお願いします。
色々と手間をおかけしてすいません。よろしくお願いします。
tatsumaru77さん
マクロ...。すいません初心者なのでよく分からないのですがファイル名の後に付いてるやつでしょうか??
ファイル名も本日は休日で分からないため明日に会社に行き調べてみます。
祝日の件に関しては題名は祝日で構いません。
よろしくお願いします(^.^)
皆様、多数のご回答頂きありがとうございますm(_ _)m
tatsumaru77さん
遅くなり申し訳ありません。マクロ実行できるように設定を行いました。先にシフト表を設定してから色付けをやっていきたいと考えています。
enunokokoroさん、goomaniaさん
教えて頂いたわかる範囲で数式を入れてみました。
気になったのが「B1」に日付が入っていることです。
月の変換、曜日、日付の設定はお陰様で出来ました。
「B5」にも数式を入れてオートフィルタで「AF8」までやると1月分は出来ました。
2月分からはどうすればいいですか?
あと気になったのが2月29日ですね。
今年は29日があったので「AD」列に29日の枠を作っていました。「I1」を2021年に変えてみると「AD11」が1日になってしまいます。
これはどうしょうもないでしょうか?
何度もすいません。