解決済み
Excelの関数を使って勤怠シフト表の担当者を表示させたいです。 添付した画像をご覧いただくとわかる通り、その日の日勤と夜勤の担当者を関数で出したいと思っています。 (VLOOCUP関数で1名だけなら「日勤」「夜勤」の検索キーを使って出せると思いますが、今回は条件として夜勤2名となるので他の方法が必要ですよね) あと、日勤1、日勤2という風に手を加えれば出来ると思いますが、それは業務都合でできないため、それ以外の方法で表示させる方法をご教示お願いします。
117閲覧
若干ややこしい数式になりますが、、、 画像の赤枠で囲われた部分が、セル[C11:E14]とします。 データが入っている部分が、セル[C3:E6]、名字がセル[F3:F6]とします。 ■セル[C11]に入れる数式 =INDEX($F$3:$F$6,MIN(IF("日勤"=C$3:C$6,{1;2;3;4}))) 上記を配列数式にします。 数式バーに、上記数式を貼り付けて、Shift + Ctrlを押しながら、Enterを押してください。成功すると、数式の前後に自動で { } が付きます。 ■セル[C12]に入れる数式 =IF(INDEX($F$3:$F$6,MAX(IF("日勤"=C$3:C$6,{1;2;3;4})))=C11,"",INDEX($F$3:$F$6,MAX(IF("日勤"=C$3:C$6,{1;2;3;4})))) こちらも配列数式にします。数式バーに貼り付け、Shift + Ctrlを押しながら、Enterを押してください。 ■セル[C13]に入れる数式 =INDEX($F$3:$F$6,MIN(IF("夜勤"=C$3:C$6,{1;2;3;4}))) こちらも配列数式にします。略 ■セル[C14]に入れる数式 =IF(INDEX($F$3:$F$6,MAX(IF("夜勤"=C$3:C$6,{1;2;3;4})))=C13,"",(INDEX($F$3:$F$6,MAX(IF("夜勤"=C$3:C$6,{1;2;3;4}))))) こちらも配列数式にします。略 全て、配列数式にしましたら、セル[C11:C14]をコピーし、 セル[D11:E14]に貼り付けてください。 尚、同じ名字の人がいる場合は、上手くいきません。名前の一部をいれるなりし、名字の部分が一意になるようにしてください。 また、この数式は、日勤、夜勤、それぞれ2名までしか対応していません。
なるほど:1
< 質問に関する求人 >
シフト(東京都)この条件の求人をもっと見る
求人の検索結果を見る
< いつもと違うしごとも見てみませんか? >
覆面調査に関する求人(東京都)この条件の求人をもっと見る