Excelで出来る日付算出
はじめに
Excelを用いて日付を算出する方法は複数あります。また、日付と一言に言ってもそれは今日なのか明日なのか、それとも一ヶ月後か一年後かなど指定できる日付は様々です。本記事では関数も含めた日付の求め方をご紹介しています。この記事を参考に日付を素早く算出でき、あなたの業務の効率化に繋がれば幸いです。では、最後までお付き合い宜しくお願いします。
関数を使わずに日付を取得する方法
Excelと言えば関数を使うことを考える人も多いのではないでしょうか。事実、本記事でも日付を求めるためにいくつも関数を使います。しかし、実は関数を使わないで日付を取得する方法があります。とてもシンプルなのですが、セルを編集モード(F2キーを押す)にした状態で「きょう」と打ちます。この時重要なのは「今日」と漢字に変換しないようにすることです。実際にやってみると以下の様になります。
この状態で矢印キーで移動、「2020年7月1日」を選択することで今日の日付を取得することが出来ました。また、「あした」「あさって」「きのう」「おととい」と文字を入力すれば変換候補にそれぞれの日付が現れます。
また、セルを選択した状態で「Ctrl+;」で今日の日付、「Ctrl+:」で今の時間が取得できるショートカットも便利です。
関数を使って日付を取得する方法
・TODAY()
セルにTODAY関数を入力するだけで今日の日付が取得できます。
・NOW()
セルにNOW関数を入力するだけで今の時分秒が取得出来ます。
・YEAR()
年を表す関数で、引数(カッコ内に入れる関数やセル)に日付が入っているセルを入力することで、そのセルから年にあたる数字だけを取得できます。更に「YEAR(TODAY())」で今年、「YEAR(TODAY())+1」で来年、-1で昨年を取得することが出来ます。
・MONTH()
月を表す関数、YEAR関数と使い方は同じです。
・DAY()
日を表す関数、YEAR、MONTH関数と使い方は同じです。
・DATE()
セルに記入されている数値を日付として取得する関数です。使用するには以下の画像のように年、月、日にあたるセルを選択します。以下の場合、結果は「2020/8/25」になります。
・EOMONTH()
月末を求める関数です。使い方は下の画像の様に、開始日となるセルを選択した後、「カンマ」で区切り、数値を入力することで何カ月後(前)の月末の日にちを取得することが出来ます。以下の場合、結果は「2020/9/30」になります。後ろの何カ月後かを指定する値を0にすると、その月の月末を出力します(この場合だと8月末)。
・NETWORKDAYS()
開始日から納期までの営業日があと何日あるかを調べてくれる関数です。使い方は下の画像の様になり、ここでは残りの日数は23日になります。[祭日]の所でセルを選択または、数値を入力することで更に祭日を引いた日数を算出してくれます。これにはあらかじめ祝日用の表を作っておくと便利です。
また、企業によっては土日休みで無かったり一週間に1日だけ休みの所もあるでしょう。そんな時はNETWORKDAYS.INTL関数を使います。NETWORKDAYS関数の終了日と[祭日]の間に任意の休日が選べる引数が出てきます。
・WORKDAY()
NETWORKDAYS関数の逆版です。開始日から何日の営業日を経るかを入力することで納期を調べることが出来ます。また、先ほどと同様、[祭日]でセルを選択、数値を入力することで更に祭日分を省いた分の納期を算出することが出来ます。もちろんWORKDAY.INTLで休業日をカスタマイズ出来ます。
・WEEKDAY()
WEEKDAY関数は分かりづらいかも知れませんが、指定された日にちの曜日を数値として返す関数です。引数に日にちが入っているセルを入力し、「カンマ」で区切り、どの順番で曜日に数値を振るかを決めます。一番よく使う順番は「1」番で、日曜日~土曜日周期で曜日に番号を振ります。
シリアル値
この記事を読んでくださっている方の中には一緒にExcelで操作している方もいらっしゃるかも知れません。そしてもしかしたら「44034」のような訳の分からない数字が表示された方もいらっしゃるのでは無いでしょうか。これはシリアル値と言います。Excelの日付は「1900/1/1」から何日経っているかで決まります。つまり、このような数字はこの日から44034日後という意味なのです。こんな時は、ホームタブの「標準」を「日付」に変えてあげることで、日付に戻ります。また、セルに数字の「3」と入力したはずなのに「1900/1/3」と表示されてしまうのも同じ理屈です。初期値(日)の「1900/1/1」を含め3日経った日付を表示しているのです。そんな時はホームタブの「日付」を「標準」に変えてあげることで普通の数字が表示されるようになります。
日付を様々な表記方法で
和暦へ
今までの日付の表記は「2020/7/1」という表記でしたが、日本では度々年号を用いた日付が使われることが多いです。そんな時はDATESTRING関数を使います。使い方は下の画像の通り、引数に日付が入っているセルを入力します。結果は「令和02年07月01日」となっています。
TEXT関数を用いた表現
TEXT関数は日付の表現をすることにもよく使用されます。まず曜日について、TEXT()の引数の中に日付の入ったセルを入力、「カンマ」で区切った後「”aaaa”」と入力することで「水曜日」という表記になり、「”aaa”」で「(水)」になります。「”dddd”」で英語表記の曜日「Wednesday」になり、「”ddd”」だと頭3文字の英語表記の曜日「Wed」になります。
ちなみに、年号についてもTEXT関数で「”gggee年mm月dd日”」と入力することで先ほどの和暦と全く同じ表記が出来ます。TEXT関数はその用途が多すぎてここでは紹介しきれないので、ご自身で調べて色々遊んでみてください。
カレンダー作ろう!
Excelでカレンダーを作ることだって可能です。まず、完成図をお見せします。
1.先に日曜~土曜までの曜日を記入しておく。
2.年と月を別々のセルに入力する(ここではB1に年、D1に月)。
3.セルI2には「=DATE(B1,D1,1)」と入力する。この時「日」を必ず1日にする事。
4.セルJ2に「=WEEKDAY(I2,1)」を入力する。
5.セルA3に「=I2-(J2-1)」と入力する。これで基準としている「7/1」から3日(4-1)を引いた日数を代入することになる。
6.セルB3に移動して「=A3+1」と入力する。これで前日から一日加算されることになる。このセルをセルG3までドラッグする。
7.セルA4に移り「=G3+1」を入力する。セルB4に移り「=A4+1」を入力し、セルG4までドラッグする。
8.セル範囲A4:G4を下方向に目的の日付が出てくるまでドラッグする。
9.恐らく「2020/7/1」のような表記になっているので範囲選択し、ホームタブの「標準」を「ユーザー定義」に変更、種類の入力バーに「d」と一文字だけ入力する。
10.今月でない日にちの文字色を白にしておく。
11.後は年や月を変更するだけでカレンダー内の表示が変わる。
おわりに
いかがでしたでしょうか、日付に関するスキルが多数存在することを分かって頂けたと思います。しかし、日付に関する関数はもっとあり、調べれば調べる程新たな発見に出会えます。序章でもお話しましたがこの記事を読んだ後、業務が少しでも楽になっているならば幸いです。以上、最後までお付き合い頂きありがとうございました。