Excelの日付フィールドは、WindowsとMacの間で互換性がありません。
画像クレジット: Devonyu / iStock /ゲッティイメージズ
Excelで生年月日から年齢を計算する最も一般的な2つの方法は、DATEDIF関数を使用することと、日付フィールドで標準の算術演算子を使用することです。 Excelスプレッドシートで日付値を使用する場合、日付値がExcelにどのように格納されるか、および文字列と日付フィールドの違いを理解しておくと役立ちます。 日付フィールドは、WindowsバージョンとMacバージョンのExcelの間で互換性がありません。 一方のプラットフォームで日付フィールドを含むスプレッドシートを作成し、もう一方のプラットフォームで開くと、日付の値が正しくなくなります。
Excelの日付値
Excelには、値を文字列ではなく日付として正しく解釈するDateと呼ばれる特別なデータ型があります。 セルを日付形式でフォーマットするか、DATEVALUE関数を使用してテキスト文字列表現から日付の値を計算することにより、文字列を日付フィールドに変換できます。 たとえば、DATEVALUE( "08/05/2008")は、文字列 "08/06/2008"を2008年8月6日または オペレーティングシステムの設定がMonth-Day-YearであるかDay-Month-Yearであるかに応じて、2008年6月8日。
今日のビデオ
Excelが日付を保存する方法
Excelは、日付を浮動小数点数であるシリアル番号として内部的に保存します。 整数部分は、Windowsでは1900年1月1日からの日数を表し、Macでは1904年1月1日からの日数を表します。1月1日は1です。 小数点以下の部分は、真夜中からの秒数を表します。日付に時間が関連付けられていない場合はゼロです。 このため、Windowsで作成されたスプレッドシートの日付フィールドは、Macでスプレッドシートを開いたときの同じ日付フィールドとは4年異なります。
DATEDIFで年齢を計算する
ExcelのDATEDIF関数は、スプレッドシートで年齢を計算するのに理想的です。 2つの日付の間の完全な年、月、日数、または3つの任意の組み合わせを返すように関数に指示できます。 結果の希望に応じて、開始日と終了日を文字列、シリアル番号、または日付値、および「Y」、「M」、「D」の組み合わせとして渡します。 たとえば、DATEDIF( "10/14/2014"、 "05/01/1970"、 "YMD")は、2つの日付の間の完全な年、月、日数を返します。 「Y」を単独で渡すと、年数のみが返されます。 「YM」を渡すと、完全な年と月の数が返されます。 TODAY関数は、今日の日付を日付値として返します。
算術を使用して年齢を計算する
日付は数値として保存されるため、日付値に対して標準の算術演算子を使用して、独自の年齢計算を実行できます。 2つの日付値を引くと、結果は2つの日付の間の日数になります。 日数を365.25で割り、結果の整数値を取得して、2つの日付の間の年数を取得します。 たとえば、セルA1に生年月日が含まれている場合、スプレッドシートのセルに「= INT((TODAY()-A1)/365.25)」と入力して年齢を計算できます。