- ベストアンサー
ACCESSのMで、月を計算したい場合
ACCESSでMを使用して、月を計算したい場合についてお伺いしたいのですが、終了日-スタート日が1カ月以上か、1カ月未満かを計算する際に、この場合は、2月なら28日、3月なら31日とACCESS上でもう日にちがセットアップされているんですか? よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
DateDiff 関数をお使いかと思いますが ヘルプの下の方に | 12 月 31 日とその次の年の 1 月 1 日を比較すると、DateDiff 関数の年 ("yyyy") は、1 日後であっても、1 を返します。 と書かれています。 Datediff("m","2008/11/30","2008/12/1") Datediff("m","2008/11/1","2008/12/31") これは、どちらも 1 を返します。 1ヶ月以上かどうかを判定したいなら DateAdd 関数で スタート日の1ヵ月後を求め、 その値と終了日を比較するとよいでしょう。
その他の回答 (2)
- exchangekytgi
- ベストアンサー率29% (29/98)
回答No.2
先ほどの補足事項です。 具体的な計算式は以下の通りです。 =datediff("d","2008/2/28","2008/3/1")
- exchangekytgi
- ベストアンサー率29% (29/98)
回答No.1
まず「ACCESSでMを使用して」の意味がよく分からないのですが・・・。 それは置いておいて、終了日-スタート日をするときに datediff関数をお使いでしょうか。 もしそうなら月末はもちろんうるう年もちゃんと 考慮されていますよ。 試しに”2008/3/1”-”2008/2/28”としてみてください。 今年はうるう年でしたので1ではなく2と算出されるはずです。