- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル関数)
エクセル関数でシフト表を作成する方法
このQ&Aのポイント
- エクセル関数を使用して、シフト表を作成する方法を教えてください。シフト表は、日付と勤務者名を含んだ表であり、出勤日には記号が入力されます。また、最初に出勤した日と最後に出勤した日を表示させたいという要望があります。
- シフト表は、【Sheet1】に作成されます。日付は連続した日付であり、出勤日には記号が入力されます。種類によって記号は異なるため、詳細は質問文章をご参照ください。
- 【Sheet2】に勤務者名を入力すると、最初に出勤した日と最後に出勤した日を表示させたいという要望がありますが、具体的な方法については記述されていません。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- keithin
- ベストアンサー率66% (5278/7941)
回答No.3
>2行目は出勤日に記号を入力します。 既出回答でも指摘されていますが,出勤日に記号を手入力していて,出勤していない日はホントに何も入ってない数式も入ってないただの空セルになっているなら 最初の出勤日: =IF(COUNTA(Sheet1!B2:IV2),INDEX(Sheet1!B$1:IV$1,MATCH("*",B2:IV2,0)),"") 最後の出勤日: =IF(COUNTA(Sheet1!B2:IV2),INDEX(Sheet1!B$1:IV$1,MATCH("",B2:IV2,-1)),"") 実際に何列から何列までの表になっているのかご相談が手抜きですが,ちゃんと実際のセル範囲に合わせて数式を直してから使ってください。
質問者
お礼
説明不足ですみませんでした。 ご回答いただきありがとうございました!
- kagakusuki
- ベストアンサー率51% (2610/5101)
回答No.2
その関数を考える際に、出勤していない日は何と入力されているのか知る必要がありますので、補足等でお教え願います。 もし、出勤していない日には何も入力されていない場合には、その事をお教え願います。
質問者
補足
説明不足ですみません。 休日は一斉にとるので、表に反映させていません。 ということで、B列以降は何らかの記号が入っていることになります。 よろしくお願いします。
- mshr1962
- ベストアンサー率39% (7417/18945)
回答No.1
一例ですが 最小=MIN(IF($B2:$BA2="",”2099/12/31"*1,$B$1:$BA$1)) と入力してCtrl+Shift+Enterで配列数式に 最小=MAX(IF($B2:$BA2="",0,$B$1:$BA$1)) と入力してCtrl+Shift+Enterで配列数式に
質問者
お礼
ご回答ありがとうございます。 なぜか最小も最大もエラーが出てしまうのですが・・・ もう一度範囲など確認して試してみます。
お礼
お礼が遅くなり申し訳ありません。 見本の表も添付していただき大変分かりやすかったです。 ありがとうございました!