Excel (エクセル) 学習室 / KENZO30


エクセル中級 17

中級・特別編トップへ

エクセル学習室 HOME

   中 級 17

Excelの基礎

  日付/時刻関数(日付と時刻計算の基礎)       
  日付/時刻関数(DATE、TIME関数)   

 

 

日付/時刻関数(日付と時刻計算の基礎)

日付と時刻計算の基準

日付/時刻関数は、アドイン関数を含め21種類(中級1参照)ありますが、日付/時刻関数を使う前にExcelでの日付や時刻の処理方法を理解しておく必要があります。

日付や時刻は通常の数値データと異なり10進法ではありません。このためにExcelでは、シリアル値と言う連続数値で計算を処理するようになっています。

 

 

シリアル値とは

シリアル値(連続数値)の基準日は、標準設定の場合「1900/1/1」です。この日を「1」とし、順じ加算して表示されます。なお、Excel上で取り扱える最後の日付は、「9999/12/31」です。


左図の「2002/5/3」のシリアル値は、「37379」となっていますが、これは「1900/1/1」を「1」として数えた場合、「37379」日目と言う意味です。

時刻は、上図のように小数点以下の数字で表されます。「0:00」(午前0時)は、「0」です。1日は24時間ですから、「1:00」(午前1時)は、「0.04166666…」(1÷24)となります。分や秒も同じく順じ割って行けば求めることができます。1分は、(1÷24÷60)で求めることができます。
日付と時刻を併記すると上図のようなシリアル値になります。

  • シリアル値を表示するには
    Excelでは、「2002/5/3」と言うように「/」(スラッシュ)で区切って入力すると、日付が入力できます。この時、書式のダイアログボックスの表示形式を見ると、自動的に「日付」になっているはずです。シリアル値を表示するには、この「日付」の表示形式を「標準」にします。
    「日付」を「標準」に「標準」を「日付」にする切り替えは、使うことがありますので覚えておきましょう。

  • シリアル値の基準日について
    シリアル値の基準日は、上記で「1900/1/1」と解説しましたが、基準日はもう一つあって切り替えることができます。「ツール」から「オプション」をクリックして、表示されるダイアログボックス内の「計算方法」のタブ内を見てください。ブックオプションに「1904年から計算する」があり、これにチェックを入れると基準日は「1904/1/1」になります。(ただし、1904/1/2が「1」となる)これは、初期のExcel(マック版)の基準がこうなっていて、互換性を保つためだと言うことです。
    通常は、標準設定のまま使いましょう。

 

 

時刻と経過時間

Excelで経過時間を計算するには、少し注意が必要です。


左図は、退社時間と出勤時間の差から勤務時間を求め、合計しています。しかし、正しい合計が求められていません。
これは、Excelが時間を時刻データと認識し、24時間を超えると、「0:00」から計算し直たためです。

これを防ぐには、表示形式を変更します。ユーザー定義の表示形式(初級・番外1〜3参照)で経過時間として表示できるようにします。(他、関数でも対応可能)


書式設定ダイアログボックスの表示形式を見ると
「13:30」は、「時刻」になっているはずです。これを、「ユーザー定義」にして「[h]:mm」の表示形式を作ります。
[h]:mm」は、経過時間を表す表示形式です。
(ユーザー定義の表示形式の作り方も、初級・番外1〜3参照。)

この例のように、Excel上で時刻や経過時間を計算するには、何を計算しているのかを認識して取り扱う必要があります。

 

先頭へ戻る

 

 

日付/時刻関数(DATE、TIME関数)

DATE関数

DATE関数は指定した日付(年、月、日)から、シリアル値に変換する関数です。ただし、表示形式を「標準」のままDATE関数を使用すると、自動的に「日付」の「1997/3/4」の表示形式が適用されます。

書式で表すと、DATE(年,月,日)となります。
引数のは、通常1900〜9999で指定しますが、0〜1899でも指定可能です。0〜1899の場合は、1900を加算した年がその年になります。の指定は、1〜12ですが、12より大きい数値を指定すると翌年の月に換算されます。は、1〜その月の最終日で指定しますが、最終日より大きい数値で指定すると翌月以降の日に換算され、負の数値で指定すると、前の月に遡ります。

 

使用例


左図は、種々の年月日を、DATE関数で変換したものです。
引数による違いを確認してください。

上図では、DATE関数で求めた年月日が直接シリアル値ではなく、「1997/3/4」の表示形式になっています。これは、表示形式を「標準」のまま、DATE関数を使用したためです。あくまでシリアル値を直接表示するには、「日付」を「標準」に戻す必要があります。なお、図のように「日付」の表示形式は、種々の表示形式に変更できます。

 

 

TIME関数

TIME関数は、指定した時刻(時、分、秒)からシリアル値に変換する関数です。ただし、表示形式を「標準」のままTIME関数を使うと、自動的に「時刻」の「1:30 PM」の表示形式が適用されます。

書式で表すと、TIME(時,分,秒)となります。
引数の時には、0〜23の時を表す数値で指定します。分と秒は、0〜59の分や秒を表す数値で指定します。負の数や範囲を超える数値を指定した場合は、換算した時刻で表示されます。

 

使用例


左図は、種々の時分秒を、TIME関数で変換したものです。
引数による違いを確認してください。

この場合も、TIME関数で求めた時分秒は、自動的に「時刻」の「1:30 PM」で表示されています。シリアル値を直接表示するには、「時刻」を「標準」に戻す必要があります。「1:30 PM」の表示形式では、秒は省略されます。図のように表示形式は、種々の表示形式に変更できます。

 

 

   先頭へ戻る   

 

中級・特別編トップへ

Excel(エクセル)学習室 HOME


KENZO30 内容の無断転載は、禁止しています