日付間の違いの判別(Microsoft Excel)
Excelマクロをプログラミングするときは、日付が内部的に変数内にシリアル番号として格納されていることを知っておく必要があります。シリアル番号は、開始「基準日」から、特に100年1月1日から経過した日数を表します。これは、必要に応じて、シリアル番号を使用して計算を実行できることを意味します。たとえば、日付を相互に減算するだけで、2つの日付間の日数を見つけることができます。
上記の開始日はタイプミスではないことに注意してください。マクロでは、計算はワークシートよりもはるかに早い基準日から行われます。 (ワークシートは、Excelの構成方法に応じて、基準日として1900または1904のいずれかを使用します。)これは、マクロがワークシートで実行できるよりもはるかに広い範囲の日付で機能できることを意味します。
日付の計算をより細かくしたい場合は、DateDiff関数を使用できます。この関数を使用すると、たとえば、2つの日付の間の週数または月数を決定できます。このタイプの情報を見つけるために関数を使用するには、次のようにします。
iNumWeeks = DateDiff("ww", dFirstDate, dSecondDate) iNumMonths = DateDiff("m", dFirstDate, dSecondDate)
最初の行は2つの日付の間の週数を決定し、2番目の行はそれらの間の月数を決定します。
注:
このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。
_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。
このヒント(2535)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。
link日付間の差異の決定。