プロが教える店舗&オフィスのセキュリティ対策術

Access2007でフイールドにフイールド名BEGDATEに「yyyy/mm/dd」が書き込んでありもう一つのフイールドにフイールド名ENDDATEに「yyyy/mm/dd」が記録されています。
この「BEGDATEのyyyy/mm/dd」と「ENDDATEのyyyy/mm/dd」の経過年数、月数、日数をたとえば40年5ヶ月10日だとすれば
40.5.10と表示させるにはこれを表示させるボックスのコントロールソースにどのような関数を書いたらよいのでしょうか。

因みにAccess2003時代は=PASSAWAY([BEGDATE],[ENDDATE])と言う簡単な関数で出来ていましたが今これを使うと#NAME?のエラーになってしまいます。

A 回答 (2件)

推測でしかありませんがモジュールにユーザー定義関数を作っていたのでは?


Datediff関数を使えば、ユーザー定義関数作るのは簡単だと思います。

「Datediff関数」
http://office.microsoft.com/ja-jp/access/HA01228 …

「日付関連のユーザー定義関数」
http://www1.bbiq.jp/blue_sky/ac/ac2002011.html

この回答への補足

書き込み有り難うございます。
「Datediff関数」や「日付関連のユーザー定義関数」をみても私の得たいたとえば40.5.10と表示させる書き方が分からないのです。

補足日時:2008/06/18 18:26
    • good
    • 0
この回答へのお礼

「モジュールにユーザー定義関数を作っていたのでは?
Datediff関数を使えば、ユーザー定義関数作るのは簡単だと思います」
すいません。この意味が分かりませんです。

お礼日時:2008/06/18 19:04

>PASSAWAY([BEGDATE],[ENDDATE])と言う簡単な関数で


これはAccessの組み込み関数じゃないですよ

誰かが作ったユーザー関数じゃないですか?
以前使っていたmdbの中を探すとそれがあるでしょうから
新しいほうに取り込めばいいのでは

この回答への補足

これはAccessの組み込み関数じゃないのですか。
道理でエラーになるのですね。
「以前使っていたmdbの中を探すとそれがあるでしょうから
新しいほうに取り込めばいいのでは」
=PASSAWAY([BEGDATE],[ENDDATE])だけを取り込むと質問に書いたとうりエラーになります。
これを含んだmdbを取り込むとちゃんと働きますが,新しいmdbxで使いたいのです。

補足日時:2008/06/18 18:08
    • good
    • 0
この回答へのお礼

補足のところに自分でも分からない意味不明なことを書いてしまいました。すいません。
「誰かが作ったユーザー関数じゃないですか?
以前使っていたmdbの中を探すとそれがあるでしょうから
新しいほうに取り込めばいいのでは」
の意味が私の力ではよく分かりませんです。

お礼日時:2008/06/18 18:24

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!