• ベストアンサー

エクセルで3択

シフト勤務なので早番、遅番、休日と表示したいのですが 本を見て数式入力しましたができませんでした 何よい方法はありますか よろしくお願いします

質問者が選んだベストアンサー

  • ベストアンサー
  • anju_z
  • ベストアンサー率37% (67/180)
回答No.4

#3の続きです。 まずスケジュールを入れるためのカレンダー表を打ち込んでください。 コードは後から予定に合わせて手入力する列、時間帯とシフトは計算式を入れる列なので、あけておきます。 先ほど作った参照元の表のシートに「リスト」と名前をつけましょう。 Sheet3という文字の上を右クリックすると名前の変更ができます。 時間帯の列の一番上のセルに =IF(D18="","",(VLOOKUP(D18,リスト!$B$2:$D$5,2,TRUE))) と入力します。 意味は、IF関数の部分が「コード欄が空欄だったらここは空欄にして、数字が入ってたら( )内の計算をしてね」という指示です。 このIF関数を入れないと、コード欄が空欄のとき #N/A というエラーコードが表示されてしまいます。  そしてVLOOKUP関数の部分が、「コードのセルに入ってる数字を見て、リストのシートの $B$2:$D$5 のエリア内の表から該当する行を探し出しなさい、そのとき左から2列めのセルを表示しなさい」という指示です。 なお、範囲指定の部分についている$マークは絶対領域を表示するもの。 この$マークがない B2:D5 という範囲表示を使うと、コピーしたときに範囲が動いてしまいます。 シフトの列の一番上には =IF(D18="","",VLOOKUP(D18,リスト!$B$2:$D$5,3,TRUE)) と入力します。 そして時間帯とシフトのセルを下にコピーしていけば完成です。 コードを覚えて手入力する必要がありますが、3択なので大丈夫かと思います。 なお、リストのシートに作った表ですが、コードの列だけは数字が小さい順に並んでいないとエラーを起こします。 まず、お試しください。

noname#98514
質問者

お礼

ここまで詳しく書いていただいてありがとうございます 挑戦してみます 時間を割いていただいてありがとうございました

その他の回答 (3)

  • anju_z
  • ベストアンサー率37% (67/180)
回答No.3

リクエストのあった時間帯からシフト名を入力する方法を記載しておきます。 実際には、コード番号を入れて、時間帯およびシフト名を別表から参照する方法です。 時間帯を開始時刻と終了時刻に分けたい場合は、適宜列を増やして工夫してください。 画像が二枚になってしまったので2回に分けてご説明いたします。 まずは、エクセルのブックのうしろの方のシート(Sheet3とか使わないところ)に参照したい元の表を作ります。 これは参照したいデータを単にベタ打ちしたものです。 ※続きます

  • anju_z
  • ベストアンサー率37% (67/180)
回答No.2

ご質問は、たとえば以下のような表を作りたい(シフトの欄は自動入力)という内容でよろしいですか? ほかに自動入力したい項目はありますか? たとえば社員名とか、時間単価とか必要ないですか? この際、必要事項をすべて教えてください^^ 【一例】   社員名   時間   シフト  単価  日給  AAAAA   6:00-9:00  早番   1000  3000  BBBBB   9:00-15:00  遅番   900  4500  CCCCC   -      休日     

  • anju_z
  • ベストアンサー率37% (67/180)
回答No.1

メニューバーの「データ」をクリック ↓ 「データの入力規則」をクリック ↓ 「設定タブ」をクリック ↓ 入力値の種類で「リスト」を選択 ↓ 「元の値」のボックス内に「早番,遅番,休日」と入力して「OK」 カンマは半角英数で入力してください。 これでいかがでしょうか?

noname#98514
質問者

補足

やはり勤務時間を入力すると自動で入力されるのは難しいのでしょうか