Latest evidence-based health information
Ipad

Excelの秘密の日付と時刻関数、DATEDIF()をご紹介します。今でも便利な関数です。

Excelの秘密の日付と時刻関数、DATEDIF()をご紹介します。今でも便利な関数です。
Excelの秘密の日付と時刻関数、DATEDIF()をご紹介します。今でも便利な関数です。

DATEDIF() は、Date + Dif の略で、Lotus 1-2-3 から引き継がれた互換関数です。Microsoft はこれを Excel バージョン 2000 で採用しましたが、この関数の動作を説明している唯一のバージョンは Excel バージョン 2000 です。この関数はすべての Excel バージョンで使用できますが、Excel 2000 以降は「数式」メニューや「ヘルプ」メニューには表示されません。スプレッドシートの使用経験が Lotus から始まった方(多くのユーザーがそうでしょう)にとって、この古き良き Lotus 関数が今もなお健在であることを知って喜ぶことでしょう。

この関数の目的は、ユーザーが指定した開始日から終了日までの日数、月数、または年数の間の時間を計算することです。この関数の引数は以下のとおりです。

Start_date: Excel の日付シリアル番号形式での開始日

End_date: Excel の日付シリアル番号形式の終了日

単位: 使用する時間単位 (年、月、または日)

構文は次のようになります: =DATEDIF(開始日,終了日,単位)

「単位」は、テキストコードであるunit引数で指定します。例えば、以下のコードは、これらの値が関数の構文でどのように使用されるかを説明しています。

差を完全な年数で指定するには、「Y」の文字を使用します

月単位で差を指定するには「M」の文字を使用します

日数差を指定するには「D」の文字を使用します

日数の違いを示すために「MD」という文字を使用し、月と年は無視します

月の差を示すために「YM」という文字を使用し、日と年は無視します

日数の違いを示すために「YD」という文字を使用し、年は無視します

DATEDIF() 関数を使用すると、人の年齢を年、月、日で判断したり、会社の創立記念日を計算したり、家電製品やコンピュータ機器の使用年数を調べたり、2 つの日付間の日数、月数、年数を判断したり、クリスマスまでの日数をカウントダウンしたり、その他さまざまなことができます。

日付形式

この数式に日付を入力するには、次の 4 つの方法があります。

1. シリアル番号として保存します。これはMicrosoft Excel独自の日付保存方法で、計算に使用できます。日付を入力し、「標準」形式を使用すると、Excelのシリアル番号として表示されます。

01 一般的な形式を使用して日付をExcelのシリアル番号として表示する JD サルティン

例えば、2016年6月16日(開始日)から2016年10月31日(終了日)までの月数を求めるには、次の数式を入力します:=DATEDIF(42537,42674,”m”)。この数式の結果は4か月です。

02 開始日と終了日にシリアル番号を使用する JD サルティン

注意: Excel では、Windows PC では 1900 年 1 月 1 日より前の日付を計算できません。また、Apple Mac システムでは 1904 年 1 月 1 日より前の日付を計算できません。

2. セル参照として:つまり、セルのアドレスをポイントしたり、直接入力したりできます。例えば、2010年10月10日(セルA5)から2011年11月11日(セルB5)までの日数を求める場合、この例の数式は =DATEDIF(A5,B5,”d”) です。この数式の結果は397日です。

03 use cell references for the start and end dates JD サルティン

3. テキスト文字列として:つまり、日付を引用符で囲んで入力します。日付は任意の形式で入力できます。ただし、年を省略して月と日のみを入力すると、Excelは現在の年とみなします。この例の数式は =DATEDIF(“12/12/2012”, “12/25/2015”, “y”) です。この数式の結果は3年間となります。

04 use text strings for the start and end dates JD サルティン

4. または、TODAY()関数やNOW()関数などの他の関数への応答として。例えば、NOW()からクリスマスまで何日あるか知りたい場合は、次の数式を使って調べます:=DATEDIF(NOW(),”12/25/2016”,”d”)。答えは70日です。

:NOW() または TODAY() 関数を使用する場合、答えは毎日変わることに注意してください。つまり、明日このスプレッドシートを開くと、答えは1日少なくなります。

05 use other functions such as today or now for the start date JD サルティン

結果を切り上げまたは切り捨てる

1. DATEDIF() 関数は、常に (デフォルトで) 最も近い月または年の整数に切り捨てられます。

2. 月または年を切り上げて計算したい場合は、数式に半月または半年を追加します。例えば、半月(15日)の場合は=DATEDIF(A19,B19+15,”m”)、半年(183日)の場合は=DATEDIF(A21,B21+183,”y”)と入力します。これで、計算結果は最も近い月または年に切り上げられます。

06 add half a month or half a year to round the results up instead of down JD サルティン

DATEDIF() 関数のネスト

1. DATEDIF() 関数をネストしたり、上記のように TODAY() や NOW() などの他の Excel 関数と組み合わせたり、関数自体をネストして 3 つの引数(年数、月数、日数)すべてを取得したりすることもできます。例えば、2011 年 3 月 15 日から 2016 年 12 月 7 日までの年数、月数、日数を取得するには、実際の日付ではなくセル参照を使用して次の数式を入力します。=DATEDIF(A23,B23,"y") &" years, "&DATEDIF(A23,B23,"ym") &" months, "&DATEDIF(A23,B23,"md") &" days"。答えは 5 年 8 か月 22 日です。

07 nested dateif function for days months years between two dates JD サルティン

注:セル参照を使用する方が、=DATEDIF(“3/15/11”, “12/7/16”, “d”) のように日付を数式にハードコードするよりも常に便利です。新しい日付を入力するか、古い日付の上にコピーするだけで、スプレッドシート上の日付を簡単に変更できます。日付が数式にハードコードされている場合は、数式を一つずつ開いて編集する必要があります。また、ハードコードされた数式をコピーすると、コピーしたすべてのセルに同じ日付が入力されてしまいます。

2. ウーピー・ゴールドバーグの現在の年齢を正確に知りたい場合は、セルA24に彼女の誕生日(1955年11月13日)を入力し、セルE24に次の数式を入力します:=DATEDIF(A24,TODAY(),”y”)&” years, “&DATEDIF(A24,TODAY(),”ym”)&” months, “&DATEDIF(A24,TODAY(),”md”)&” days。答えは(数か月前にこのスプレッドシートを作成した時点では)60歳11ヶ月3日です。もちろん、今日このスプレッドシートを開いたら、もっと長い時間になっているでしょう。

08 nested dateif function for time between whoopi goldbergs birthday today JD サルティン

DATEDIF() 関数に関する追加情報については、この Microsoft Office サポート ページを参照するか、オンラインで検索するか、Microsoft Excel 2000 リファレンス マニュアルをまだ持っている収集家な友人を探してください。

Otpoo

Health writer and researcher with expertise in evidence-based medicine and healthcare information.