|
サイト内のご質問は質問掲示板へどうぞ♪
さて、ここは日付/時刻関数ですね。
まず最初にエクセルで日付/時刻関数を扱う場合に理解して無いといけない
部分について、説明します。
日付や時刻は10進法でないために、単純な足し引きができません。
そこでエクセルでは『シリアル値』と言う物を使用します。
このシリアル値の考え方は、整数の部分と少数の部分に分けて考えます。
整数部:これは日付です。
1900年1月1日を数字の 1 と考えます。そして、9999年12月31日が
2958465です。
どう言う事かと言いますと、1900年1月1日から1日毎に1を足す訳です。
1900年1月2日は 2 です。1900年1月3日は 3 となる訳ですね。
つまり、シリアル値というのは、1900年1月1日から9999年12月31日
まで、全ての日付に数字をあてはめているです。
その事で、シリアル値同士の単純な引き算で日数が把握できる訳です。
下の日付とそのシリアル値(カッコ内)の対応を見てください。
月の大/小/閏に関係なく「月末日のシリアル値」の次が「翌月の1日」 になっているのが判りますね。 2003/2/28(37680) , 2003/3/1(37681) 2003/3/31(37711) , 2003/4/1(37712) 2003/4/30(37741) , 2003/5/1(37742) 2004/2/29(38046) , 2004/3/1(38047) 逆に考えれば、ただ「1日から1を引く」だけで月の大/小/閏に気を 使う事無く、「前月末の日付を求める」事が出来るという事です。 これを利用すれば、下記のような関数を使って、「ある月は何日間 ある?」というような問いに答える事もできます。 =DAY(DATE(年, 月+1, 1) - 1)
小数部:これは時刻です。
一日の始まりの0時0分0秒を0.0として、翌日の0時0分0秒を1.0と考え
24時間を0.0以上1.0未満に割り振った数字です。
と言う事は12時0分0秒は0.50000ですね。
以上がエクセルで日付/時刻関数を扱う上で、理解しておかないといけない
シリアル値と言う物です。
シリアル値が理解できたところで、関数に入って行きましょう。
日付/時刻関数は大きく分けて、2種類に分けられます。
1つは、引数として、シリアル値を入力する物(シリアル値の代わりに
”2001/1/1” のように文字列(ダブルクォテーションで囲む)
で指定する事も出来ます。
もう1つは、戻り値としてシリアル値を返す物です。
では、簡単なものから、TODAY関数です。この関数は引数がいりません。
単純にセルに=TODAY()と書いてみて下さい。
現在のPCが持っている日付を返します。この関数は作業しなければ、日付は
変りませんが、再計算されます。
つまり2001年1月1日に表にTODAY関数を書き込み1度保存して、翌日開くと
日付は2001年1月2日、その日当日に書き換えられます。
これと同じ使い方の関数がNOW関数です。
TODAY関数が日付だけを返すのに対して、NOW関数は日付と時刻を返します。
後の関数はシリアル値の意味が理解できれば、アルファベット順のページの
一言説明で理解できると思います。
|