- ベストアンサー
Excelで勤務表を作成する方法
- Excelを使用して勤務表を作成する方法について説明します。セルA1からAE1までの31日分のセルを用意し、月の末日までの日付を表示します。
- 勤務表は、毎月15日が締め切りとなります。例えば、3月度の勤務表は、2月16日から3月15日までとなります。セルA1には「2014/2/16」と入力し、表示されるのは日にちのみです。
- Excelの関数を利用すると、翌日のセルには前日のセルの値に1を加えることができます。しかし、3月度の場合、2月が28日までなため、3月15日まではセルに日付が表示されます。解決方法として、IF関数などを用いることがあります。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
Excelのバージョンが2007以降であれば次の数式で良いでしょう。 B1=IF(A1="","",IF(A1<EOMONTH($A1,0)+15,A1+1,"")) B1セルを右に必要数コピーすれば目的通りです。
その他の回答 (5)
- yaritsusozai
- ベストアンサー率59% (50/84)
締め日が、毎月かならず15日と決まっているのであれば、 ”もし左隣のセルの値が、基準となるa1セルの日付の「翌月の15日以降」ならば空欄にする、そうでなければ、左隣に1足した日付にする” という考え方で式を組み立てれば問題なさそうです。 また、万一、A1セルにまだ値が入力されていない場合の備えも加味して、 B1セルに、 =IF(OR($A$1=””,A1>=DATE(YEAR($A$1),MONTH($A$1)+1,15)),””,A1+1) と書き込み、右にAE1までフィルコピー。表示形式や列幅など適宜調整して下さい。
お礼
yaritsusozai 様 回答ありがとうございました。 具体的な数式まで付けて頂き助かりました。
- asuncion
- ベストアンサー率33% (2127/6290)
少し言葉足らずでした。 >1)AC1, AD1, AE1の3つのセルを選択している状態で、 > 「条件付き書式」を実行 1)AC1, AD1, AE1の3つのセルを選択している状態で、 「ホーム」ー「条件付き書式」を実行
お礼
asuncion 様 回答ありがとうございました。
- asuncion
- ベストアンサー率33% (2127/6290)
AC1, AD1, AE1のセル(月度によっては空白にしたい)に、 以下のとおり条件付き書式を設定してみてはどうでしょうか。 なお、以下はExcel2013の場合の説明です。 Excelのバージョンによっては、操作方法が異なるかもしれません。 1)AC1, AD1, AE1の3つのセルを選択している状態で、 「条件付き書式」を実行 2)書式ルールの編集で 「数式を使用して、書式設定するセルを決定」を選択 3)「次の数式を満たす場合に値を書式設定」に下記の数式を入力 =DAY(INDIRECT(ADDRESS(ROW(),COLUMN())))>15 4)「書式」の「フォント」タブで、「色」を背景色と同じにする
お礼
asuncion 様 複数回の回答ありがとうございました。 数式まで付けて頂き感謝します。
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! A1セルはシリアル値で 2014/2/16 のように入力する!というコトですので・・・ 一例です。 B1セル(セルの表示形式はA1と同じように ユーザー定義から d としておきます)に =IF($A1+COLUMN(A1)<=EDATE($A1,1)-1,$A1+COLUMN(A1),"") という数式を入れAE1セルまでフィルハンドルでコピー!ではどうでしょうか?m(_ _)m
お礼
tom04 様 回答ありがとうございました。 数式をそのまま使わせてもらいました。 思ったようになりました。
- asuncion
- ベストアンサー率33% (2127/6290)
日付が16以上のときは文字色を背景色と同じ(通常は白、でしょうか)に するような条件付き書式を設定してみてはどうでしょうか。 私は、勤務シフトを作成する際、そのようにしています。
補足
回答ありがとうございます。 セルの文字を数値に変えて16以上の時に背景色(白)文字色(白)で、空白のようになりました。 しかし、セルの値は数値ではなく、日にちを表す文字の為、判断を無視され思うようになりません。 もしよければ条件付き書式の具体例を教えてください。 よろしくお願いいたします。
お礼
bunjii 様 回答ありがとうございました。 具体的な数式まで付けて頂き助かりました。