文書番号: 401700
最終更新日: 1997/10/20
DATEDIF
 ̄ ̄ ̄ ̄
指定された期間内の日数、月数、または年数を返します。
DATEDIF(開始日 , 終了日 , 単位)
開始日・・・・・期間の開始日を指定します。
終了日・・・・・期間の終了日を指定します。
単位・・・・・・・ 戻り値の単位と種類を、単位を表す文字列で指定します。
単位戻り値の単位と種類
"Y"期間内の満年数
"M"期間内の満月数
"D"期間内の満日数
"MD"1 か月未満の日数
"YM"1年未満の月数
"YD"1年未満の日数
開始日と終了日には、"93/1/30" や "1-30-93" のような日付を表す文字列、ある
いは日付に対応するシリアル値を指定することができます。
使用例
DATEDIF("1/1/92","1/1/94","Y")=2
DATEDIF("6/1/93","6/15/94","YD")=14
DATEDIF("3/1/93","8/4/98","MD")=3
関連項目
DATE 指定された日付に対応するシリアル値を返します。
DATEVALUE 日付を表す文字列をシリアル値に変換します。
WEEKDAY シリアル値を曜日に変換します。
なお、DATEDIF 関数は、データ互換のために用意された関数であるため、関数ウ
ィザードを使用して入力することができません。そのため、直接入力していただく
ようお願いいたします。
DAYS360
 ̄ ̄ ̄ ̄
1年を 360 日 (30 日× 12 ヶ月) と仮定して、2 つの日付の間の日数を
返します。引数 [方式] が追加され、日数の計算方法をヨーロッパ方式と米国
NASD (National Association of Securities Dealers) 方式の中から選択できる
ようになりました。
詳細は、ヘルプ ファイルの「ワークシート関数一覧」を参照して下さい。
WEEKDAY
 ̄ ̄ ̄ ̄
シリアル値を曜日に変換します。引数 [曜日] が追加され、戻り値の種類が選択
できるようになりました。詳細は、ヘルプ ファイルの「ワークシート関数一覧」を
参照して下さい。
WEEKNUM
 ̄ ̄ ̄ ̄
シリアル値に対応する日がその年の何週目にあたるかを、数値で返します。追加
された書式は「 24 時間、60 分、60 秒以上の時間の表示書式」と「曜日の表示
書式」です。詳細は、ヘルプ ファイルの「ワークシート関数一覧」を参照して下
さい。
24 時間、60 分、60 秒以上の時間の表示書式
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
24 時間を越える時間は整数に繰り上げされるため、時間として扱うことができま
せんでした。
例えば「 23 時間 00 分」と「 10 時間 00 分」を加算すると「 33 時間 00 分」
となりますが、これは「 1 日と 9 時間 00 分」ということになり、時間を表示す
るための表示形式では日付は表示できなかったため「 9 時間 00 分」だけが表示
されます。
これを日付を含めて表示させると「 1990年1 月 1 日 9 時間 00 分」となり、本来
の意味を失ってしまいます。Excel 5.0 からは、時間を表す「 h 」という表示形式
を 「 [] 」で囲むと整数部分の繰り上げがされずに「 33 時間 00 分」と表示する
ことができます。同様に「 m 」や「 s 」に「 [] 」を付けることで 60 分や 60 秒
以上の表示が可能になりました。
曜日の書式
 ̄ ̄ ̄ ̄ ̄
曜日を表すには「 aaa 」と「 aaaa 」の 2 つの形式があります。前者は「月、火、
水 …」というような略式のものであり、後者は「月曜日、火曜日、水曜日…」とい
うように完全な形で表示するものです。
=DATEDIF(開始年月日,終了年月日,"Y") 経過した年数
=DATEDIF(開始年月日,終了年月日,"YM") 経過した 1年未満の月数
=DATEDIF(開始年月日,終了年月日,"MD") 経過した 1 月未満の日数
年数を算出方法 8 桁の数値を 10000 で割った商の値
月数の算出方法 8 桁の数値を 100 で割った商の整数部分を 100 で割った
余りの値
日数の算出方法 8 桁の数値を 100 で割った余りの値
=DATE(INT(8 桁の数値/10000),MOD(INT(8 桁の数値/100),100),
MOD(8 桁の数値,100))
6 桁の数値の場合 (例、 940801) も同じ数式でシリアル値を算出することができます。
(1/24)=1 時間
(1/1440)=1 分
=(退社時間-出社時間-(1/24))
上記のような式で退社時間から出社時間を引き算した時間から 1 時間を引くことができます。同様にして分単位での時間の算出も可能です。また、時間も分も数値によっては通分することが可能であることはいうまでもありません。
(1/12)=2 時間
(1/72)=20 分
=(退社時間-出社時間-(1/24)-(1/72))
上記のような式で退社時間から出社時間を引き算した時間から 1 時間と 20 分を引いた時間を算出することが可能です。
=DATE(1994,3,1)-DATE(1994,2,1)
該当する月の翌月の 1 日から該当する月の 1 日を引き算するという方法で求めることができます。アドインの関数で EOMONTH 関数というものもあります。これを使って、以下のような数式でも求めることができます。
=DAY(EOMONTH(DATE(94,2,1),0))
EOMONTH 関数を使用するには、分析ツール アドイン マクロをセットアップする必要があります。詳しくは、「ユーザーズ ガイド」 701 ページ「 37 章 アドイン機能の組み込み」またはヘルプ ファイルの「アドインを登録、削除するには」を参照してください。
=TODAY()-DATE(YEAR(TODAY()),1,1)
今日の日付から今年の 1 月 1 日の値を引きます。この計算方法のでは、今日が 1 月 1 日の場合には、経過日数が 0 日であり、1 月 2 日になってから 1 日経過したということになります。この計算方法は「片端 (かたはし) 落ち」といい、起算日または満期日のどちらかを数えないというものであり、日付・日数計算では一般的なものです。
=TODAY()-DATE(YEAR(TODAY()),MONTH(TODAY()),1)
今日の日付から今月 1 日の値を引きます。この計算方法の場合は、今日がその月の1 日の場合は、経過日数が 0 日であり、2 日になってから 1 日経過したということになります。この計算方法は「片端 (かたはし) 落ち」といい、起算日または満期日のどちらかを数えないというものであり、日付・日数計算では一般的なものです。
=DATE(YEAR(TODAY())+1,1,1)-TODAY()
来年の 1 月 1 日から今日の値を引きます。Keywords: KB401700
Technology: kbExcel500 kbExcelSearch kbExcelWinSearch