隠れ関数?DATEDIF関数が関数一覧に表示されない理由

関数一覧に表示されないDATEDIF関数


1. 背景と起源

DATEDIF関数は、元々はMicrosoft Excelが「Lotus 1-2-3」との互換性を維持するために実装された関数です。
この関数は、正式なExcel関数というよりも、他の表計算ソフトからの移行支援として内部的に含まれたものです。

2. Lotus 1-2-3とは?

Lotus 1-2-3(ロータス ワン・ツー・スリー)は、1980年代から1990年代前半にかけて大きなシェアを持っていた表計算ソフトです。
IBM製のパソコン(DOS環境)で動作し、ビジネス用途で広く使われました。
その後、Microsoft Excelの登場とWindowsの普及により主流の座を譲ることになりましたが、当時は業界標準とも言える存在でした。

3. 非表示の理由

以下のような理由から、DATEDIF関数は関数のオートコンプリート候補や関数一覧に表示されません。

  • Microsoftの公式サポート外関数であるため
    DATEDIFはマイクロソフトの公式なドキュメントでも明示的に紹介されないことが多く、仕様変更や非推奨の可能性があるため、一般ユーザー向けの一覧に表示されていません。
  • 関数ヘルプが存在しないため
    Excel内でDATEDIF関数を入力しても、他の関数のように構文のヒントや引数説明がポップアップ表示されません。
  • 誤用によるエラーを避けるため
    単位(”Y”、”M”、”D”など)の入力が文字列で、ミスが起こりやすいため、あえて初心者には露出を抑えているとも考えられます。

4. それでも使われる理由

非表示であるにもかかわらず、DATEDIF関数は「年齢計算」や「勤続年数の計算」などで非常に使い勝手が良く、
ベテランのExcelユーザーを中心に現在でも広く利用されています。
そのため、関数を知っていて正しく使える人にとっては「隠れた名関数」とも言える存在です。

5. 今後の注意点

DATEDIF関数は将来のExcelのバージョンでサポートが終了する可能性もゼロではありません。
そのため、大規模な業務用ファイルや他人と共有するファイルでは、YEARFRAC関数や他の方法と併用しておくと安心です。

6. まとめ

DATEDIF関数は、Lotus 1-2-3互換用として密かに搭載されたExcelの隠し機能であり、公式にサポートされていないため、関数一覧には表示されません。
しかし、年齢計算や期間の差分処理にとって非常に有用で、知っておくと他の関数では代替しにくい強みがあります。