次の方法で共有


WorksheetFunction.Days360 メソッド (Excel)

1 年を 360 日 (30 日×12) として、支払いの計算などによく使用される 2 つの日付の間の日数を返します。

構文

Days360 (Arg1Arg2Arg3)

: WorksheetFunction オブジェクトを表す変数。

パラメーター

名前 必須 / オプション データ型 説明
Arg1 - Arg2 必須 バリアント型 (Variant) 間の日数を求める 2 つの日付を指定します。 end_date (Arg2) の後にstart_date (Arg1) が発生した場合、 Days360 は 負の数値を返します。 日付は、DATE 関数を使って入力するか、他の数式または他の関数の結果を指定します。
Arg3 省略可能 バリアント型 計算で米国メソッドとヨーロッパメソッドのどちらを使用するかを指定する ブール 値。

戻り値

Double

注釈

経理システムで 1 年を 30 日×12 と仮定している場合、この関数は、支払いの計算などに役立ちます。

次の表に 、Arg3 の値を示します。

Method 定義
False または省略 米国 (NASD) メソッド。 開始日が月の 31 日の場合、同じ月の 30 日と等しくなります。 終了日が月の 31 日で、開始日が月の 30 日より前の場合、終了日は翌月の 1 日と等しくなります。それ以外の場合、終了日は同じ月の 30 日に等しくなります。
True ヨーロッパ方式。 開始日または終了日が、ある月の 31 日になる場合、同じ月の 30 日として計算が行われます。

注意

Days360 関数を使用して 2 つの日付間の日数を計算すると、予期しない値が返されます。 たとえば、開始日が 2 月 28 日で、終了日が 3 月 28 日の Days360 関数を使用すると、値 28 日が返されます。 すべての完全な月に対しては 30 日が返されることが予期されます。 この動作を回避するには、次の式を使用します。

=DAYS360(start_date,end_date,IF(method=TRUE,TRUE,IF(AND(method=FALSE,MONTH(start_date)=2,DAY(start_date)>=28,MONTH(end_date)=2,DAY(end_date)>=28),TRUE,FALSE)))

Excel では、日付は集計に使用できるようにシリアル値として格納されます。 既定では、1900 年 1 月 1 日のシリアル値は 1、2008 年 1 月 1 日は 1900 年 1 月 1 日から 39,448 日後であるためシリアル値は 39,448 になります。 Macintosh 用の Microsoft Excel では、既定として別の日付システムが使用されます。

注:

Visual Basic for Applications (VBA) では、Excel と異なる方法でシリアル日付が計算されます。 VBA では、シリアル日付値 1 は 1900 年 1 月 1 日ではなく、1899 年 12 月 31 日に該当します。

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。