• ベストアンサー

Access 自作関数

お世話になります。アクセス2000です。 モジュールで以下のようなものを書きました。 月末日を求める関数を作りたかったのです。 Public Function Gend()   Dim ge As Date   ge = CDate([Forms]![F_Main]![年] & "/" & [Forms]![F_Main]![月] & "/" & "01")   ge = DateAdd("m", 1, ge)   ge = DateAdd("d", -1, ge) End Function 年は西暦4桁(2004)月は2桁(02)が入っています。 このGend()をクエリーの抽出条件欄に「 <=Gend() 」って書きましたが上手く動きません。エラーにはならないのですが、抽出件数が0件でした。(実際に#2004/02/29#ってやるとちゃんと出るのです) 初めて自作関数なるものを作成したのでどこが違うのかさっぱりです。 お助けを・・・・!

質問者が選んだベストアンサー

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 肝心の戻り値のセットがされていないですが・・・ End Function の直前に、 Gend = ge を挿入して下さい。 なお、クエリの抽出条件は、 <="#" & Gend() & "#" としないといけないかも知れません。

noname#12495
質問者

お礼

ご指導、ありがとうございました。 お恥ずかしい限りです。 クエリーは"#"なしでそのまま使えました。 これからもよろしくお願いします。

その他の回答 (1)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.2

Public Function Gend(NEN,TUKI) As Date   Gend = Dateserial(NEN,TUKI + 1,0) End Function これでクエリ上で <=Gend([Forms]![F_Main]![年], [Forms]![F_Main]![月])

関連するQ&A