• 締切済み

どの関数を使えば良いのか…

おはようございます。 シート1にその日の出勤簿があります。 (B1より横列が日にち、B1=1、C1=2、A2より下に氏名と当番が書いてあります。A2=田中、A3=当番、A4=佐藤、A5=当番、A6=鈴木、A7=当番…以下複数) B2=○、B3=トイレ、B4.B5=空白、B6=○、B7=風呂…以下複数 C2=…と言ったように1日1日その日の出勤の有無(○か空白)と当番(トイレ、風呂等)を入力してあります。 ここからが本題なのですが、シート2に当番表を作りたいのですが、どんな関数を使えば良いのでしょうか? 具体的には A1に日付 A2から下が当番名(A2=トイレ、A3=風呂…以下複数) B2に式を入れ、上記のシート1の場合だと田中が自動的に入力されると良いのですが… Lookupとかも考えたのですが… 何か関数でよい方法ありますでしょうか? よろしくお願いいたします。

みんなの回答

  • msMike
  • ベストアンサー率20% (364/1804)
回答No.3

シート1、2 を夫々 Sheet1、Sheet2 とします。 1.次の[条件付き書式]を設定した Sheet2!B2 に設定    数式が   =ISERROR(B2)    フォント色 白 2.Sheet2!B2: に次式を入力して、此れを下方にズズーッとドラッグ&ペースト    =INDEX(Sheet1!A:A,MATCH(A2,OFFSET(Sheet1!$A$1,1,MATCH(A$1,Sheet1!$1:$1,0)-1,100,),0)) なお、Sheet1 のセル B1 以右、および Sheet2 のセル A1 には年月日のシリアル値を入力し、ユーザー定義で d の書式に設定することを前提としています。 Sheet1 のA列の人数は最大50名としているけど、それを超える場合はステップ2に示す式中の 100 をそれなりに大きくしてください。

  • msMike
  • ベストアンサー率20% (364/1804)
回答No.2

》 B2に式を入れ、上記のシート1の場合だと田中が自動的に入力されると良いのですが… 田中が当日出勤していなくても(セル B2 が空白)、ですか? それとも「当番が書いてあ」る人は必ず○印があるとか?(→YESなら○か空白かは不必要?)

akusakk
質問者

補足

基本的には、田中が出勤していない場合は、他の誰かがその当番についています。 (実際は田中、佐藤、鈴木以外にも複数名います) ただ、急病等で救急休みになった時は、当番なしになりますが… また、出勤=当番があるわけではありません。 (出勤したけど当番のない人もいます)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

B2=INDEX(シート1!$A$2:$A$11,MATCH($A2,シート1!B$2:B$11,0)-1)

関連するQ&A