• 締切済み

access 自作関数をフォームで使うとき

お世話になります。 ACCESS2000でシステムを作っています。 商品コードを年・月をコード化したものに、日付2ケタを足したものを作成する scdという関数を作り、フォームのフィールドに、表示したのですが、 #Name!?と表示されていうまくいきません。 どうすればいいですか? 関数は以下のようになっています。 Public Function scd() As String Dim hiduke As Date Dim yc As String Dim mc As String Dim dc As String Dim strtmp As String hiduke = Date '年コードを設定 Select Case Year(hiduke) Case Is = 2012 yc = "a" Case Is = 2013 yc = "b" Case Is = 2014 yc = "c" Case Is = 2015 yc = "d" Case Is = 2016 yc = "e" Case Is = 2017 yc = "f" Case Else MsgBox "年コードを追加してください" End Select '年コードを設定 Select Case Month(hiduke) Case Is = 1 mc = "a" Case Is = 2 mc = "b" Case Is = 3 mc = "c" Case Is = 4 mc = "d" Case Is = 5 mc = "e" Case Is = 6 mc = "f" Case Is = 7 mc = "g" Case Is = 8 mc = "h" Case Is = 9 mc = "i" Case Is = 10 mc = "j" Case Is = 11 mc = "k" Case Is = 12 mc = "l" End Select '日付を設定 dc = Format(hiduke, "dd") strtmp = yc & mc & dc scd = strtmp End Function

みんなの回答

  • m3_maki
  • ベストアンサー率64% (296/460)
回答No.1

表示するだけなら フォームのテキストボックスのコントロールソースに =scd() のように記述してください。 関数は、 標準モジュール、または、表示するフォームのモジュール に記述する必要があります。

aissia
質問者

お礼

早々のご回答ありがとうございます。 標準モジュールに作成していたのですが、うまくいかなかったので、質問しました。 フォームの方へ天気して、Publicを削除したら、表示されました。 ありがとうございました。

関連するQ&A