エクセルの勉強部屋のホ−ムへエクセルの勉強部屋トップページへ
●日付+時刻
 
DATE 指定した日付に対応するシリアル値を返します
DATEDIF 開始日と終了日を指定して、その期間内の日数、月数、または年数を返します
DATEVALUE 日付を表す文字列をシリアル値に変換します
DAY シリアル値を日付に変換します
DAYS360  1 年を 360 日 (30 日×12) として、支払いの計算などに使用される 2 つの日付の間の日数を返します
EDATE 開始日から起算して、指定した月数だけ前または後の日付に対応するシリアル値を返します
EOMONTH 開始日から起算して、指定した月数だけ前または後の月の最終日に対応するシリアル値を返します
HOUR シリアル値を時刻に変換します
MINUTE シリアル値を時刻の分に変換します
MONTH シリアル値を月に変換します
NETWORKDAYS 開始日と終了日を指定して、その期間内の稼動日の日数を返します
NOW 現在の日付と時刻に対応するシリアル値を返します
SECOND シリアル値を時刻の秒に変換します
TIME 指定した時刻に対応するシリアル値を返します
TIMEVALUE 時刻を表す文字列をシリアル値に変換します
TODAY 現在の日付に対応するシリアル値を返します
WEEKDAY シリアル値を曜日に変換します
WORKDAY  開始日から起算して、指定した稼動日数だけ前または後の日付に対応するシリアル値を返します
WEEKNUM [シリアル値]に指定した日付が、その年の第何週に当たるかを整数値で返します。週の数え方を[週の基準]で設定します
YEAR シリアル値を年に変換します
YEARFRAC 開始日と終了日を指定して、その間の期間が 1 年間に対して占める割合を返します


DATE
(指定した日付に対応するシリアル値を返します。)
書式 =DATE(年,月,日)
1〜4桁で年を表します。使用する日付システムによって引数が解釈されます。
Windows版Excelの標準では1900年日付システム、Macintosh版Excelの標準では1904年日付システムが使われます。
1900年日付システムでは、次のように引数が解釈されます。

年の値が0〜1899の範囲の場合、1900を加えた値が実際の年になります。
たとえば、数式DATE(100,1,2)は、2000年1月2日を返します。

年の値が1900〜9999の範囲の場合、その値が実際の年になります。
たとえば、数式DATE(2000,1,2)は、2000年1月2日を返します。

年の値が負の値または10000以上の場合、#NUM!エラー値が返されます。
1904年日付システムでは、次のように引数が解釈されます。

年の値が4〜1899の範囲の場合、1900を加えた値が実際の年になります。
たとえば、数式DATE(100,1,2)は、2000年1月2日を返します。

年の値が1904〜9999の範囲の場合、その値が実際の年になります。
たとえば、数式DATE(2000,1,2)は、2000年1月2日を返します。

年の値が3以下または10000以上の場合、あるいは1900〜1903の範囲の場合、#NUM!エラー値が返されます。

月を表す数値を、1〜12の範囲で指定します。
月に12より大きい数値を指定すると、年の1月から月か月後の月を指定したと見なされます。
たとえば、数式DATE(1998,14,2)は、1999年2月2日に対応するシリアル値を返します。
日を表す数値を、1〜月の最終日を表す数値の範囲で指定します。
指定した月の最終日より大きい数値を日に指定すると、月の1日から日日後の日を指定したと見なされます。
たとえば、数式DATE(1998,1,35)は、1999年2月4日に対応するシリアル値を返します。
解説
MicrosoftExcelでは、日付はシリアル値として連続番号で格納されて計算が行われます。
Excelでは、1900年日付システムと1904年日付システムの2つの日付システムに対応しています。
1900年日付システムでは、1900年1月1日がシリアル値1になります。

1904年日付システムでは、1904年1月1日がシリアル値0として格納され、1904年1月2日のシリアル値が1となります。
たとえば、1900 年日付システムでの 1998 年 1 月 1 日は、1900 年 1 月 1 日から数えた日数の 35796 がシリアル値として格納されます。
DATE関数は、引数年、月、日が定数ではなく数式である場合に便利です。


使用例

次の数式は、いずれも1998年1月1日に対応するシリアル値を返します。
1900年日付システム(Windows版Excelの標準)を使用している場合、
DATE(1998,1,1)=35796

1904年日付システム(Macintosh版Excelの標準)を使用している場合、
DATE(1998,1,1)=34334

↑日付+時刻の先頭へ


DATEDIF
(開始日と終了日を指定して、その期間内の日数、月数、または年数を返します。)
書式 =DATEDIF(開始日,終了日,単位)
開始日
期間の開始日を指定します。
日付はクォーテーションマークを前後に付けた文字列(たとえば"2001/1/30"など)、シリアル値(たとえば1900年日付システムを採用している場合に2001年1月30日を表す36921など)、または他の関数の結果(たとえばDATEVALUE("2001/1/30")など)の形式で入力します。
日付に対応するシリアル値の詳細については、NOWを参照してください。
終了日
期間の終了日を指定します。
単位
戻り値の種類を指定します。
 
単位 戻り値
"Y" 期間内の満年数
"M" 期間内の満月数
"D" 期間内の日数
"MD" 開始日から終了日までの日数。この場合、月と年は考慮されません。
"YM" 開始日から終了日までの月数。この場合、日と年は考慮されません。
"YD" 開始日から終了日までの日数。この場合、年は考慮されません。
使用例
DATEDIF("2001/1/1","2003/1/1","Y")=2
これは期間内が満2年であることを示しています。

DATEDIF("2001/6/1","2002/8/15","D")=440
これは2001年1月1日から2002年8月15日までの間が440日であることを示しています。

DATEDIF("2001/6/1","2002/8/15","YD")=75
これは6月1日から8月15日までの間が75日であることを示しています。この場合、年は考慮されません。

DATEDIF("2001/6/1","2002/8/15","MD")=14
これは1日から15日まで(開始日から終了日まで)の日数を示しています。この場合、月と年は考慮されません。

DATEDIF関数について
[関数の挿入][関数の貼り付け]ダイアログに表示されないためキーボードから手入力する必要があるということです。
Excel 2000だけはかろうじてDATEDIF関数のヘルプが存在していますが、その他のバージョンではヘルプからも削除されています。
マイクロソフトのサイトでも「[XL2000] DATEDIF 関数が関数ウィザードの関数名一覧に含まれない」(KB414668)というサポート技術情報内の記事に明記されています。
「DATEDIF 関数は、他の表計算アプリケーションとの互換を保つために用意された関数のため、関数ウィザードには表示されません。」という記述がありますが、 Lotus1-2-3のユーザーをExcelに取り込むためにサポートした関数であるためMicrosoftではヘルプにも関数の貼付けにもありません。
ダイアログにも表示されない、ほとんどのバージョンでヘルプにも表示されないという、特殊な状況にあるDATEDIF関数です

↑日付+時刻の先頭へ

DATEVALUE

(日付を表す文字列をシリアル値に変換します。)
書式=DATEVALUE(日付文字列)
日付文字列
日付を表す文字列を、Excelの組み込みの日付表示形式で指定します。
たとえば、ダブルクォーテーションマークで囲まれた"1/30/1998"または"30-Jan-1998"などの文字列は、日付を表します。

1900年日付システム(Windows版Excelの標準)を使用する場合、日付文字列には1900年1月1日〜9999年12月31日の範囲にある日付を表す文字列を指定する必要があります。

また、1904年日付システム(Macintosh 版 Excel の標準) を使用する場合は、1904 年 1 月 1 日 ? 9999 年 12 月 31 日の範囲にある日付を指定します。
日付文字列 にこの範囲外の値を指定すると、エラー値 #VALUE! が返されます。
日付文字列の年の部分を省略すると、コンピュータの内蔵時計による現在の年が使用されます。

また、日付文字列に時刻の情報が含まれていても無視されます。
関数の計算では、日付を表す文字列は、自動的にシリアル値に変換されます。

使用例
1900年日付システム(Windows版Excelの標準)を使用している場合、
DATEVALUE("1998/8/22")=36029
DATEVALUE("2002/02/23")=37310

次の例は、コンピュータの内蔵時計が1998年に設定されている場合です。
DATEVALUE("7/5")=35981

↑日付+時刻の先頭へ

DAY

(シリアル値を日付に変換します。)
書式=DAY(シリアル値)
シリアル値
検索する日付を指定します。
日付には、半角のダブルクォーテーション(")で囲んだ文字列("1/30/1998"や"1998/01/30"など)、シリアル値(1900年から計算する場合は1998年1月30日を表す35825)、または他の数式または関数の結果(DATEVALUE("1/30/1998")など)を指定します。
シリアル値の詳細については、NOW関数を参照してください。
使用例
DAY("4-Jan")=4
DAY("平成10年4月15日")=15
DAY("1998/8/11")=11
DAY("2001/10/10")=10
↑日付+時刻の先頭へ

DAYS360

(1年を360日(30日×12)として、支払いの計算などに使用される2つの日付の間の日数を返します。)
書式=DAYS360(開始日,終了日,方式)
開始日,終了日
間の日数を求める2つの日付を指定します。引数には、"1993/1/30"や"1993-1-30"のような日付を表す文字列を指定することができます。開始日に終了日よりも後の日付を指定すると、負の値が返されます。日付には、"1998/01/30"や"1/30/1998"のようにダブルクォーテーション(")で囲まれた文字列、35825(1900年日付システムでの1998年1月30日)などのシリアル値、または、DATEVALUE("1998/1//30") などの式や関数の結果を指定することができます。
方式
計算に米国NASD方式とヨーロッパ方式のどちらを採用するかを、論理値で指定します。
方式 定義
FALSE/省略 NASD方式。
開始日が、ある月の31日になる場合、同じ月の30日として計算が行われます。
終了日が、ある月の31日になる場合は、開始日が30日でない限り、その翌月の1日として計算が行われます。
2月の28日と29日は、いずれも2月30日と見なされます。

TRUE ヨーロッパ方式。
開始日または終了日が、ある月の31日になる場合、同じ月の30日として計算が行われます。
この関数は、NASDcompliant(NationalAssociationofSecuritiesDealers)です。
つまり、開始日がある月の31日になる場合、同じ月の30日として計算が行われます。
終了日がある月の31日になる場合は、開始日が30日でない限り、その翌月の1日として計算が行われます。
2月の28日と29日は、いずれも2月30日と見なされます。

ヒント
1年を365日または366日として、2つの日付の間の日数を求めるには、単純に、日付の引き算を行います。
たとえば、"12/31/1998"-"1/1/1998"=364となります。
使用例
DAYS360("1998/1/30","1998/2/1")=1
次の例は、セルD10に「1998/1/30」、セルD11に「1998/2/1」が入力されている場合です。
DAYS360(D10,D11)=1
↑日付+時刻の先頭へ

EDATE

(開始日から起算して、指定した月数だけ前または後の日付に対応するシリアル値を返します。)
この関数を使うには、セットアッププログラムを実行して分析ツールを組み込み、エクセル2007では、「Office ボタン」「Excel のオプション」「アドイン」で、[設定]ボタンを押し[有効なアドイン]の中から[分析ツール]のチェックを入れ「OK」ボタンを押します。[ツール]メニューの[アドイン]コマンドを使ってその分析ツールを登録する必要があります。
書式=EDATE(開始日,月)
開始日
起算日を表す日付を指定します。
日付には、"1998/01/30"や"1/30/1998"のようにダブルクォーテーション(")で囲まれた文字列、35825(1900年日付システムでの1998年1月30日)などのシリアル値、または、DATEVALUE("1998/1/30")などの式や関数の結果を指定することができます。
開始日から起算した月数を指定します。
月に正の数を指定すると、起算日より後の日付となり、負の数を指定すると、起算日より前の日付となります。
開始日に無効な日付を指定すると、エラー値#VALUE!が返されます。
月に整数以外の値を指定すると、小数点以下が切り捨てられます。
使用例
1900年日付システム(Windows版Excelの標準)を使用している場合、次のようになります。
EDATE(DATEVALUE("1998/01/15"),1)=35841=1998/02/15
EDATE(DATEVALUE("1998/03/31"),-1)=35854=1998/02/28
EDATE("2002/01/09",2)=37324=2002/3/09

1904年日付システム(Macintosh版Excelの標準)を使用している場合、次のようになります。
EDATE(DATEVALUE("1998/01/15"),1)=34379=1993/02/15
EDATE(DATEVALUE("1998/03/31"),-1)=34392=1993/02/28

↑日付+時刻の先頭へ

EOMONTH

(開始日から起算して、指定した月数だけ前または後の月の最終日に対応するシリアル値を返します。)
この関数を使うには、セットアッププログラムを実行して分析ツールを組み込み、エクセル2007では、「Office ボタン」「Excel のオプション」「アドイン」で、[設定]ボタンを押し[有効なアドイン]の中から[分析ツール]のチェックを入れ「OK」ボタンを押します。[ツール]メニューの[アドイン]コマンドを使ってその分析ツールを登録する必要があります。
書式=EOMONTH(開始日,月)
開始日
起算日を表す日付を指定します。
日付には、"1998/01/30"や"1/30/1998"のようにダブルクォーテーション(")で囲まれた文字列、35825(1900年日付システムでの1998年1月30日)などのシリアル値、または、DATEVALUE("1998/1/30")などの式や関数の結果を指定することができます。
開始日から起算した月数を指定します。
月に正の数を指定すると、起算日より後の日付となり、負の数を指定すると、起算日より前の日付となります。
開始日に無効な日付を指定すると、エラー値#VALUE!が返されます。
月に整数以外の値を指定すると、小数点以下が切り捨てられます。
開始日と月との和が無効な日付である場合、エラー値#NUM!が返されます。
使用例
次の例は、1900年日付システム(Windows版Excelの標準)を使用している場合です。
EOMONTH("1998/01/01",1)=35854(1998/2/28)
EOMONTH("1998/01/01",-1)=35795(1997/12/31)

次の例は、1904年日付システム(Macintosh版Excelの標準)を使用している場合です。
EOMONTH(DATEVALUE("1993/01/01"),1)=34392(1998/2/28)
EOMONTH(DATEVALUE("1993/01/01"),-1)=34333(1997/12/31)

↑日付+時刻の先頭へ

HOUR

(シリアル値を時刻に変換します。)
書式=HOUR(シリアル値)
シリアル値
検索する時刻を指定します。
時刻には、半角のダブルクォーテーション(")で囲んだ文字列("6:45PM"など)、小数(6:45PMを表す0.78125)、または他の数式または関数の結果(TIMEVALUE("6:45PM")など)を指定します。
使用例
HOUR(0.7)=16
HOUR(29747.7)=16
HOUR("3:30:30PM")=15
↑日付+時刻の先頭へ

MINUTE

(シリアル値を時刻の分に変換します。)
書式=MINUTE(シリアル値)
シリアル値
検索する分を指定します。
時刻には、半角のダブルクォーテーション(")で囲んだ文字列("6:45PM"など)、小数(6:45PMを表す0.78125)、または他の数式や関数の結果(TIMEVALUE("6:45PM")など)を指定します。
使用例
MINUTE("4:48:00PM")=48
MINUTE(0.01)=14
MINUTE(4.02)=28
↑日付+時刻の先頭へ

MONTH

(シリアル値を月に変換します。)
書式=MONTH(シリアル値)
シリアル値
検索する月の日付を指定します。
日付には、半角のダブルクォーテーション(")で囲んだ文字列("1/30/1998"や"1998/01/30"など)、シリアル値(1900年から計算する場合は1998年1月30日を表す35825)、または他の数式や関数の結果(DATEVALUE("1/30/1998")など)を指定します。
使用例
MONTH("6-May")=5
MONTH(35795)=12
MONTH(35796)=1
MONTH("2004/04/01")=4
↑日付+時刻の先頭へ

NETWORKDAYS

(開始日と終了日を指定して、その期間内の稼動日の日数を返します。)
この関数を使うには、セットアッププログラムを実行して分析ツールを組み込み、エクセル2007では、「Office ボタン」「Excel のオプション」「アドイン」で、[設定]ボタンを押し[有効なアドイン]の中から[分析ツール]のチェックを入れ「OK」ボタンを押します。[ツール]メニューの[アドイン]コマンドを使ってその分析ツールを登録する必要があります。
書式=NETWORKDAYS(開始日,終了日,祭日)
開始日
対象期間の最初の日を表す日付を指定します。
日付には、半角のダブルクォーテーション(")で囲んだ文字列("1/30/1998"や"1998/01/30"など)、シリアル値(1900年から計算する場合は1998年1月30日を表す35825)、または他の数式や関数の結果(DATEVALUE("1/30/1998")など)を指定します。
終了日
対象期間の最終日を表す日付を指定します。
祭日
国民の祝日や夏期休暇など、稼動日数の計算から除外する日を表す日付を指定します。
この引数は省略することができます。
日付を含む一連のセルか、日付を示すシリアル値の配列定数を指定できます。
Excelで日付を処理するときのシリアル値については、次の「解説」を参照してください。
引数に無効な日付を指定すると、エラー値#VALUE!が返されます。
使用例
1998年の10月1日に始まり、12月1日に終わるプロジェクトがある場合、次の例を使用してプロジェクトの日数を計算できます。
1998年11月26日は休日で、計算からは除外されています。
NETWORKDAYS("10/01/1998","12/01/1998","11/26/1998")=43

次の例では、1999年10月1日に始まり、2000年2月15日に終わるプロジェクトの作業日数が返されます。
1999年12月24日と2000年1月3日は除外されています。
NETWORKDAYS("10/01/1999","2/15/2000",{"12/24/1999","1/3/2000"})=96

次の例では、2002年5月1日から2002年5月31日まで(両日を含む)の作業日が計算されます。5月28日は除外されます。
NETWORKDAYS("2002/05/01","2002/05/31","2002/05/28")=22

↑日付+時刻の先頭へ

NOW

(現在の日付と時刻に対応するシリアル値を返します。)
書式=NOW()
Windows版Excel97とMacintosh版Excel97では、標準として使用される日付システムが異なります。
Windows版Excelでは1900年日付システムが採用されており、1900年1月1日から9999年12月31日までの日付に対応するシリアル値が使用されます。

一方、Macintosh版Excelでは1904年日付システムが採用されており、1904年1月1日から9999年12月31日までの日付に対応するシリアル値の右側(小数部)は時刻を、左側(整数部)は日付を表します。

たとえば、1900年日付システムで367.5は日付と時刻を同時に表し、1901年1月1日正午に対応します。

一方、Macintosh版Excelでは、この数値367.5は1905年1月2日正午に対応します。
計算に使用する日付システムを変更するには、[オプション]ダイアログボックス([ツール]-[オプション])の[計算方法]タブで[1904年から計算する]チェックボックスをオンまたはオフにします。

システムの異なるExcelで作成されたワークシートを開くと、自動的に日付システムが変更されます。たとえば、Macintosh版Excelで作成されたワークシートをWindows版Excelで開くと、[1904年から計算]チェックボックスが自動的にオンになります。

NOW関数の計算結果は、ワークシートが再計算されたとき、またはこの関数を記述したマクロが実行されたときにだけ更新されます。
時間の経過と共に自動的に計算結果が更新されることはありません。

使用例
次の例は、1900年日付システムを使用し、コンピュータの内蔵時計が1994年1月1日の午後12時30分に設定されている場合です。
NOW()=34335.52083

次の例は、その10分後にワークシートを再計算する場合です。
NOW()=34335.52778

次の例は、1904年日付システムを使用し、コンピュータの内蔵時計が1994年1月1日の午後12時30分に設定されている場合です。
NOW()=32873.52083

次の例は、その10分後にワークシートを再計算する場合です。
NOW()=32873.52778

↑日付+時刻の先頭へ

SECOND

(シリアル値を時刻の秒に変換します。)
書式=SECOND(シリアル値)
シリアル値
検索する秒を指定します。時刻には、半角のダブルクォーテーション(")で囲んだ文字列("6:45PM"など)、小数(6:45PMを表す0.78125)、または他の数式や関数の結果(TIMEVALUE("6:45PM")など)を指定します。
使用例
SECOND("4:48:18PM")=18
SECOND(0.01)=24
SECOND(4.02)=48
↑日付+時刻の先頭へ

TIME

(指定した時刻に対応するシリアル値を返します。)
書式=TIME(時,分,秒)
時  時を表す数値を0〜23の範囲で指定します。
分  分を表す数値を0〜59の範囲で指定します。
秒  秒を表す数値を0〜59の範囲で指定します。
使用例
ダブルクォーテーション(")は、戻り値が文字列であることを表します。TIME(12,0,0)=0.5(正午に対応)
TIME(16,48,10)=0.700115741(午後4時48分10秒に対応)
TEXT(TIME(23,18,14),"h:mm:ssAM/PM")="11:18:14PM"
↑日付+時刻の先頭へ

TIMEVALUE

(時刻を表す文字列をシリアル値に変換します。)
書式=TIMEVALUE(時刻文字列)
時刻文字列
時刻を表す文字列を、Excelの組み込みの時刻表示形式で指定します。
たとえば、"6:45PM"や"18:45"など、半角のダブルクォーテーション(")で囲んだ文字列で指定します。
時刻文字列に日付の情報が含まれていても無視されます。
使用例
TIMEVALUE("2:24AM")=0.1
TIMEVALUE("22-Aug-19556:35AM")=0.274305556
↑日付+時刻の先頭へ

TODAY

(現在の日付に対応するシリアル値を返します。)
書式=TODAY()

↑日付+時刻の先頭へ


WEEKDAY

(シリアル値を曜日に変換します。)
書式=WEEKDAY(シリアル値,種類)
シリアル値
検索する日付のシリアル値を指定します。
シリアル値とは、Excelで日付や時刻の計算に使用されるコードのことです。
シリアル値の代わりに、"1998/01/30"や"1/30/1998"のようにダブルクォーテーション(")で囲まれた文字列、35825(1900年日付システムでの1998年1月30日)などのシリアル値、または、DATEVALUE("1998/1/30")などの式や関数の結果を指定することができます。
指定した文字列は、自動的にシリアル値に変換されます。
シリアル値の詳細については、後の「解説」を参照してください。
種類
戻り値の種類を数値で指定します。
 
種類 戻り値
1/省略 1(日曜)〜7(土曜)の範囲の整数。以前のバージョンのExcelと結果は同じ。
1(月曜)〜7(日曜)の範囲の整数。
3 0(月曜)〜6(日曜)の範囲の整数。

TEXT関数を使うと、指定した書式を値に設定することができます。
TEXT("4/16/1998","dddd")="Thursday"

解説
Microsoft Excel では、日付はシリアル値として連続番号で格納されて計算が行われます。
Excel では、1900 年日付システム と 1904 年日付システムの 2 つの日付システムに対応しています。
1900 年日付システムでは、1900 年 1 月 1 日がシリアル値 1 になります。

1904 年日付システムでは、1904 年 1 月 1 日がシリアル値 0 として格納され、1904 年 1 月 2 日のシリアル値が 1 となります。
たとえば、1900 年日付システムでの 1998 年 1 月 1 日は、1900 年 1 月 1 日から数えた日数の 35796 がシリアル値として格納されます。
Excel での日付の処理については、ここをクリックしてください。

使用例
WEEKDAY("1998/2/14")=7(土曜日)
WEEKDAY("1998/2/14",2)=6(土曜日)
WEEKDAY("2003/02/23",3)=6(日曜日)

次の例は、1900年日付システム(Windows版Excelの標準)を使用している場合です。
WEEKDAY(35981.007)=1(日曜日)

次の例は、1904年日付システム(Macintosh版Excelの標準)を使用している場合です。
WEEKDAY(35981.007)=7(土曜日)

↑日付+時刻の先頭へ

WORKDAY

(開始日から起算して、指定した稼動日数だけ前または後の日付に対応するシリアル値を返します。)
この関数を使うには、セットアッププログラムを実行して分析ツールを組み込み、エクセル2007では、「Office ボタン」「Excel のオプション」「アドイン」で、[設定]ボタンを押し[有効なアドイン]の中から[分析ツール]のチェックを入れ「OK」ボタンを押します。[ツール]メニューの[アドイン]コマンドを使ってその分析ツールを登録する必要があります。
書式=WORKDAY(開始日,日数,祭日)
開始日
起算日を表す日付を指定します。
日付には、"1998/01/30"や"1/30/1998"のようにダブルクォーテーション(")で囲まれた文字列、35825(1900年日付システムでの1998年1月30日)などのシリアル値、または、DATEVALUE("1998/1/30")などの式や関数の結果を指定することができます。
日数
開始日から起算して、週末や祭日を除く週日の日数を指定します。
日数に正の値を指定すると、起算日より後の日付となり、負の数を指定すると、起算日より前の日付となります。
祭日
国民の祝日や夏期休暇など、稼動日数の計算から除外する日付のリストを指定します。
この引数は省略することができます。
このリストには、日付を表す数値を含むセル範囲、または配列定数を指定します。
配列定数の詳細については、ここをクリックしてください。
Excelでの日付の処理の詳細については、次の「解説」を参照してください。
解説
開始日に無効な日付を指定すると、エラー値#VALUE!が返されます。
開始日と日数との和が無効な日付である場合、エラー値#VALUE!が返されます。
日数に整数以外の値を指定すると、小数点以下が切り捨てられます。
使用例
次の例は、1900年日付システム(Windows版Excelの標準)を使用している場合です。
WORKDAY(DATEVALUE("1998/01/03"),5)=35804(1998/01/09)
次の例は、1993年1月7日と1月8日が休日である場合です。
WORKDAY(DATEVALUE("1998/01/03"),5,{35802,35803})=35808(1998/01/13)
↑日付+時刻の先頭へ


WEEKNUM
([シリアル値]に指定した日付が、その年の第何週に当たるかを整数値で返します。週の数え方を[週の基準]で設定します。)

この関数を使うには、セットアッププログラムを実行して分析ツールを組み込み、エクセル2007では、「Office ボタン」「Excel のオプション」「アドイン」で、[設定]ボタンを押し[有効なアドイン]の中から[分析ツール]のチェックを入れ「OK」ボタンを押します。[ツール]メニューの[アドイン]コマンドを使ってその分析ツールを登録する必要があります。

書式=WEEKNUM(シリアル値,週の基準)
シリアル値
数値の他、["2001/1/23"]["平成13年1月24日"]のような日付を表す文字列を指定することも可能です。指定された文字列は自動的にシリアル値に変換されます。


週の基準

1週間が何曜日から始まるかを数値で指定します。[1]を指定するかまたは省略すると、週の始まりが一般的なカレンダーのように日曜日になり、[2]を指定すると週の始まりが月曜日になります。
解説
引数にシリアル値の範囲を超える値を指定した場合、エラー値[#NUM!]が返ります。


↑日付+時刻の先頭へ



YEAR
(シリアル値を年に変換します。)
書式=YEAR(シリアル値)
シリアル値
検索する日付を指定します。
日付には、半角のダブルクォーテーション(")で囲んだ文字列("1/30/1998"や"1998/01/30"など)、シリアル値(1900年から計算する場合は1998年1月30日を表す35825)、または他の数式や関数の結果(DATEVALUE("1/30/1998")など)を指定します。
Excelで日付を処理するときのシリアル値については、「解説」を参照してください。
使用例
YEAR("1998/7/5")=1998
YEAR("2005/05/01")=2005

次の例は、1900年日付システム(Windows版Excelの標準)を使用している場合です。
YEAR(0.007)=1900
YEAR(35981.007)=1998

次の例は、1904年日付システム(Macintosh版Excelの標準)を使用している場合です。
YEAR(0.007)=1904
YEAR(35981.007)=2002

↑日付+時刻の先頭へ

YEARFRAC

(開始日と終了日を指定して、その間の期間が1年間に対して占める割合を返します。)
この関数を使うには、セットアッププログラムを実行して分析ツールを組み込み、エクセル2007では、「Office ボタン」「Excel のオプション」「アドイン」で、[設定]ボタンを押し[有効なアドイン]の中から[分析ツール]のチェックを入れ「OK」ボタンを押します。[ツール]メニューの[アドイン]コマンドを使ってその分析ツールを登録する必要があります。
書式=YEARFRAC(開始日,終了日,基準)
開始日
対象期間の最初の日を表す日付を指定します。
日付には、半角のダブルクォーテーション(")で囲んだ文字列("1/30/1998"や"1998/01/30"など)、シリアル値(1900年から計算する場合は1998年1月30日を表す35825)、または他の数式や関数の結果(DATEVALUE("1/30/1998")など)を指定します。
終了日
対象期間の最終日を表す日付を指定します。
基準
1年を何日として計算するかを数値で指定します。
 
基準  1月の日数/1年の日数
0/省略 30日/360日(NASD方式)
1 実際の日数/実際の日数
2 実際の日数/360日
3 実際の日数/365日
4 30日/360日(ヨーロッパ方式)
解説
引数に整数以外の値を指定すると、小数点以下が切り捨てられます。
開始日、終了日に無効な日付を指定すると、エラー値#VALUE!が返されます。
基準<0または基準>4である場合、エラー値#NUM!が返されます。
使用例
YEARFRAC("1998/1/1","1998/6/30",2)=0.5
YEARFRAC("1998/1/1","1998/6/30",0)=0.497222
YEARFRAC("2001/01/25","2001/09/27")=0.67222
↑日付+時刻の先頭へ


日付と時刻の処理について
Microsoft Excel では、日付はシリアル値として連続番号で格納され、時刻は一日の一部として小数値で格納されます。
日付と時刻は数値と見なされるため、加算や減算などの計算を行うことができます。

たとえば、日付を他の日付から引いて 2 つの日付の差を計算することができます。
日付をシリアル値として表示したり、時刻を小数値として表示したりするには、セルの表示形式を [標準] 表示形式に変更します。

Excel では、1900 年日付システム と 1904 年日付システムの 2 つの日付システムに対応しています。
既定では、Windows 版 Excel では、1900 年日付システムを使います。

日付システムを 1904 年日付システムに変更するには、[ツール] メニューの [オプション] をクリックし、[計算方法] タブをクリックして [1904 年から計算する] チェック ボックスをオンにします。


次の表は、それぞれの日付システムの最初の日付と最後の日付、および各日付に対応するシリアル値を示しています。

 
日付システム 最初の日付 最後の日付 
1900 1900 年 1 月 1 日
(シリアル値 1) 
9999 年 12 月 31 日
(シリアル値 2958465) 
1904  1904 年 1 月 2 日
(シリアル値 1)
9999 年 12 月 31 日
(シリアル値 2957003) 
メモ
2 桁の年   セルに日付を入力する場合、年を表す数値を 2 桁の数字で入力すると、次のように解釈されます。
00〜29 の範囲の値で年を入力した場合、2000〜2029 の範囲の年になります。
たとえば、「5/28/19」 と入力すると、2019 年 5月 28 日と見なされます。

30〜99 の範囲の値で年を入力した場合、1930〜1999 の範囲の年になります。
たとえば、「5/28/98」 と入力すると、1998 年 5 月 28 日と見なされます。
 

Microsoft Windows 98 または Microsoft Windows 2000 を使用する場合は、システム管理者でなくても西暦の解釈方法を変更することができます。2 桁表記の西暦の解釈方法の変更については、ここをクリックしてください。

4 桁の年   年の値が正確に解釈されるようにするには、年を 4 桁 (01 ではなく 2001) で入力します。年を 4 桁で入力すると、年が正しく処理されます。

DATE ワークシート関数   年や月など、数式で日付データを操作する場合は、DATE ワークシート関数を使用します。

TIME ワークシート関数   時や分など、数式で時刻データを操作する場合は、TIME ワークシート関数を使用します。

標準で 4 桁の西暦を表示する   既定の設定では、セルに日付を入力すると、年が 2 桁で表示されます。標準の日付形式を 4 桁の西暦年号に変更するには、Windows のコントロール パネルを使用します

↑日付+時刻の先頭へ

2 桁の西暦年号の解釈方法を変更する

特に指定しない限り Excel では、00 から 29 までの年を表す数字は 2000 年から 2029 年、30 から 99 までの数字は 1930 年から 1999 年と見なされます。
Windows 95 以前または Windows NT Workstation 4.0 以前を使用し、ワークグループで作業する場合、2 桁の西暦年号の解釈方法を変更するときは、システム管理者に問い合わせてください。

Windows 98 や Windows 2000 を使用している場合は、Windows の [コントロール パネル] を使用すると、2 桁の年号を入力したときに 日付が 1900 年代と 2000 年代のいずれに属するのかを Excel が判断する基準を変更できます。
この手順を実行すると、インストールされているすべての Windows のプログラムに対して、2 桁の西暦年号を入力したときに解釈される方法が変更されます。

1. Windows の [スタート] メニューで [設定] をポイントし、[コントロール パネル] をクリックします。
2. 次のいずれかの操作を行います。
Windows 98 を使用している場合、
(地域) アイコンをダブル クリックし、[日付] タブをクリックします。
Windows 2000 を使用している場合、
(地域のオプション) アイコンをダブル クリックし、[日付] タブをクリックします。
3. [2 桁の数字で年を入力すると、次の範囲の西暦の下 2 桁として解釈されます] ボックスで、2000 年代とする上限の年を変更します。
上限の年を変更すると、下限の年も自動的に変更されます。

↑日付+時刻の先頭へ