
Excelで勤務表を作っています。
出勤は曜日で決まっていますが、人によって毎週水・金・土曜や、毎週日・月・火・木など、曜日も日数もさまざまです。
その勤務表を、曜日を入れたらその月の日にちが横並びに出るようにしたいです。
INDEX関数や、ROW,COLUMN,SMALL,WEEKDAY,WORKDAY.INTLなどなど、いろいろ関数は思いつくのですが、表示結果は月曜日だけ、や水曜日だけ、など、特定の曜日しか表示できなくて困っています。
図のように、横に引っ張ったらその月の複数の曜日から日付を返せるでしょうか?

No.1ベストアンサー
- 回答日時:
こんばんは!
一案です。
↓の画像のように別シート(画像ではSheet2)を作業用のシートとして使ってみてはどうでしょうか?
(画像が小さくて見えにくいと思いますので、拡大してみてください)
そして、出勤曜日はSheet1に別列にそれぞれ入力しておきます。
各シートの「氏名」の行の並びは同じ並びだとして、
尚、Sheet1のC1セル → 西暦年 E1セル → 月 の数値を入力し、シリアル値で処理するとします。
まず作業用Sheet(Sheet2)のA1セルは
=Sheet1!C1
C1セルは
=Sheet1!E1
とし、B3セル(セルの表示形式はユーザー定義から d としています)に
=IF(MONTH(DATE($A1,$C1,COLUMN(A1)))=$C1,DATE($A1,$C1,COLUMN(A1)),"")
B4セルに
=TEXT(B3,"aaa")
という数式を入れ、B3・B4セルを範囲指定 → B4セルのフィルハンドルで月末のAF列までコピー!
そしてB5セルに
=IF(COUNTIF(Sheet1!$D5:$J5,B$4),"○","")
という数式を入れ列・行方向にフィル&コピー!
これで出勤曜日に「○」が表示されますので、これを利用します。
Sheet1のD10セル(セルの表示形式は好みの日付で)に
=IFERROR(INDEX(Sheet2!$B$3:$AF$3,SMALL(IF(Sheet2!$B5:$AF5="○",COLUMN($B1:$AF1)-1),COLUMN(A1))),"")
配列数式なので、Ctrl+Shift+Enterで確定!(←必須★)し
フィルハンドルで列・行方向にコピーすると
画像のような感じになります。m(_ _)m

おはようございます。
回答ありがとうございます!
あれこれ考えて全然たどり着けなかった答えに…!
Excelを10年ほど触っていますが、配列数式という言葉、初めて聞きました(*_*)
最初に作ったのが曜日判定で、欠勤や振替、現場・人間が追加された分を印刷シートに直接打ち込んでいました(;'∀')
一回一回抽出関数を消して手入力で追加していました( ノД`)シクシク…
これで日付が判定できるので、追加修正が簡単にできます!
本当にありがとうございました!
No.2
- 回答日時:
私ならば、下図のようなレイアウトにすると思います。
もちろん出勤日の欄はもっと増やしますけどね。
この手は計算式だと複雑になりがちなので個人的にはマクロ(VBA)を使ってしまうと思います

回答ありがとうございます。
私も作業しやすいレイアウトに変えたいとは思いますが、会社のフォーマットなので、私の一存でレイアウトを変えることができません(;'∀')
マクロやVBAですよね…。
私も勉強しようかなとこの問題に直面して思いましたが、私が扱えたところで別の人が扱えなかったらな…。と思うところです(;^_^A
回答ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel2019、2021の日付、曜日の表示について 2 2022/11/29 15:01
- その他(恋愛相談) 私は21歳の女で精神疾患があります。 今月からアルバイトを日曜火曜木曜の週三日で始めましたが、2週間 5 2022/10/16 06:32
- Excel(エクセル) 条件付き書式で文字入力 6 2022/08/29 10:40
- 地球科学 太陽系の惑星と週(日曜日~土曜日)、月(1月~12月)に付いての質問です。 太陽系には、8つの惑星が 3 2022/10/08 22:32
- アルバイト・パート バイトが月、水、金、土入っていて、週2以上となっていて火曜から土曜の5日間休みが欲しくて、そうなると 3 2023/07/10 15:03
- Visual Basic(VBA) 祝日を除いた月曜から土曜までの1週間分の日付行を選択し、別シートへカットアンドペーストしたい 13 2023/07/13 22:46
- Excel(エクセル) 週毎の集計 2 2023/08/04 16:56
- その他(恋愛相談) 日程打診してきたのに、その日に自分の予定入れる人 6 2022/06/07 00:40
- Visual Basic(VBA) VBA 毎日取得するデータを順番に反映していく方法 6 2023/08/26 16:22
- 会社・職場 7月30日土曜日は、休みなんですが、人が足りないからでることになりました。さっきラインきまして8月5 4 2022/07/23 20:09
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルでのカットアンドペー...
-
自分の左隣のセル
-
文字列から英数字のみを抽出す...
-
セルを結合した時のエクセル集...
-
エクセルで年月日から月日のみへ
-
Excel関数:最高値をカウントし...
-
SUMIF関数で、「ブランク以外を...
-
【Excel】4つとばしで合計する方法
-
excelで、空白を除いてデータを...
-
【Excel VBA】特定の列で時間を...
-
EXCEL計算式
-
セル番地を求める関数はありま...
-
無作為に選んだ数字とアルファ...
-
Excel 自作関数から特定のセル...
-
エクセル2010で規則性のある文...
-
エクセルで支払い状況の表を作...
-
文字列に同じ文字が2回以上連...
-
エクセル 形式・文字数の異な...
-
Excelで日付が入っていたら金額...
-
エクセル関数/任意の桁数の数...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
文字列から英数字のみを抽出す...
-
自分の左隣のセル
-
SUMIF関数で、「ブランク以外を...
-
excelで、空白を除いてデータを...
-
セルを結合した時のエクセル集...
-
EXCELのcountif関数での大文字...
-
エクセル1行おきのセルを隣の...
-
エクセルで特定のセル内にだけ...
-
エクセルで、指定の値よりも大...
-
エクセルで、A2のセルにA3...
-
同一セル内の重複文字を削除し...
-
週の労働時間を計算するエクセル
-
【Excel】4つとばしで合計する方法
-
条件付き書式の色付きセルのカ...
-
EXCELでマイナス値の入ったセル...
-
エクセルで年月日から月日のみへ
-
エクセルでエンターを押すと任...
-
エラー「#REF」の箇所を置き換...
-
EXCEL-同じ組み合わせになった回数
-
Excelで日付が入っていたら金額...
おすすめ情報