- ベストアンサー
アクセスでの日付変換の仕方
アクセスで買掛金管理をしようと思っていますが、仕入日に「支払いサイト」(仕入れ先によって異なるので仕入れ先マスターにサイトを数値データとしていれてある)を加えて、Format(Month([仕入日]))+[サイト]という式で決済月を求めるようにしました。 ところが11月に仕入れた品のサイトが2ケ月の場合、本来なら2004年の1月にならなくてはならないのに、11+2=13と表示されてしまい上手くいかないことに気が付きました。 この[サイト]の1は1ケ月の1だよ!と指定する方法が分かる方見えましたら教えてください。他にも良い方法があればご教授下さい。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
DateAdd("m", [サイト], [仕入日]) は、[仕入日] から [サイト] 箇月後の日付ということです。 「"m"」の代わりに「"y"」や「"w"」等を入れれば、~年後や ~週間後 の日付を得ることもできます。 なお、得られるのは日付型のデータですから、「月」の値が必要なら Month(DateAdd("m",~))のようにしてください。 詳しくは、Access の HELP で「DateAdd 関数」を確認してみてください。 (慣れないと用語の使い方などでとまどうことがあるかもしれませんが、こまめに「HELP」を確認することは、スキルアップにもとても有用な手段です。)
その他の回答 (1)
- yoisho
- ベストアンサー率64% (331/516)
回答No.1
日付の加算なら、DateAdd 関数を利用するのがよいのでは? DateAdd("m", [サイト], [仕入日])
質問者
補足
早速の回答ありがとうございます。 このDateAdd関数を使用する際の[サイト]の形式は数値でも"月"として認識してくれるのでしょうか? 教えてください。
お礼
判りにくい質問にも的確に回答いただきましてありがとうございました。 yoishoさんのアドバイス通り式を作り完璧に動かすことができるようになりました。ヘルプを読んでもyoishoさんのように判りやすい説明はなく(「よいしょ」ではありません。)いつもヘルプはあまり活用していません。 どうもありがとうございました。