目次
索引 🔎︎

## DATEDIF

この関数は開始日と終了日の間の日数や月数、年数を返します。

This function is available since LibreOffice 3.6

### Syntax

DATEDIF(開始日;終了日;間隔)

開始日 は計算を開始する日付です。

終了日 は計算を終了する日付です。終了日は開始日よりも後ろの日付である必要があります。

間隔 は文字列で、許可される値は "d", "m", "y", "ym", "md" もしくは"yd"です。

When entering dates as part of formulas, slashes or dashes used as date separators are interpreted as arithmetic operators. Therefore, dates entered in this format are not recognized as dates and result in erroneous calculations. To keep dates from being interpreted as parts of formulas use the DATE function, for example, DATE(1954;7;20), or place the date in quotation marks and use the ISO 8601 notation, for example, "1954-07-20". Avoid using locale dependent date formats such as "07/20/54", the calculation may produce errors if the document is loaded under different locale settings.

Unambiguous conversion is possible for ISO 8601 dates and times in their extended formats with separators. If a #VALUE! error occurs, then unselect Generate #VALUE! error in LibreOffice - Preferences Tools - Options - LibreOffice Calc - Formula, button Details... in section "Detailed Calculation Settings", Conversion from text to number list box.

"間隔"の値 | 戻り値
"d" | 開始日と終了日の間の満日数
"m" | 開始日と終了日の間の満月数
"y" | 開始日と終了日の間の満年数
"ym" | 開始日と終了日の間の年の違いを考慮しない月数
"md" | 開始日と終了日の間の年と月の違いを考慮しない日数
"yd" | 開始日と終了日の間の年の違いを考慮しない日数

### Example

誕生日の計算です。1974-04-17に生まれた人がいて、今日の日付を2012-06-13とします。

=DATEDIF("1974-04-17";"2012-06-13";"y") yields 38.

=DATEDIF("1974-04-17";"2012-06-13";"ym") yields 1.

=DATEDIF("1974-04-17";"2012-06-13";"md") yields 27.

So he is 38 years, 1 month and 27 days old.

=DATEDIF(DATE(1974,4,17);"2012-06-13";"m") yields 457, he has been living for 457 months.

=DATEDIF("1974-04-17";"2012-06-13";"d")は13937を返します。彼が生まれて13937日経つということになります。

=DATEDIF("1974-04-17";DATE(2012;06;13);"yd") yields 57, his birthday was 57 days ago.