戻る

生年月日から年齢を表示する −ユーザー関数を作る

生年月日から年齢を自動的に計算して表示してくれると何かと便利です。
年齢は「早生れ」があったりしてなかなか正確な年齢がわかりにくいものです。
特に年を重ねて行くと、自分の「トシ」さえ>あやふやになるときがあるくらいですので…。
そこで次のフォームのように生年月日を入力すると、年齢を計算してフォームに表示する方法を考えます。

次のフォームのように、「生年月日」を入力すると「年齢」が表示されるようにします。

図1

年齢を計算する関数は残念ながらありませんので、ユーザー関数を作って計算させます。

ユーザー関数「age1」を作ります

[データベース]ウィンドウから[モジュール]を選択します

[新規作成(N)]を選択し、表示されたVBEの編集画面から[挿入(I)]―[プロシージャ(P)]を選びます。

[名前(N)]プロシージャの名前を付け、[Functioプロシージャ(F)]を選びます。

次のようのモジュールを記述します「’(アポストロフィ)」で記述された箇所は説明です

ここでのユーザー関数は「」という名前です。この名前は任意の名前です。
名前はアルファベットや数字がいいようです。
漢字やひらがなカタカナの名前はクエリーで使用の際に不都合が出ることがあるようです。

ここで作成したユーザー定義関数「age1」をクエリーで使用します。

「社員マスター」テーブルを元に次のクエリーを作成します。

>この[クエリー]に名前をつけて保存し、これを元に[フォーム]を作成します。

「生年月日」のコントロールボックス(テキストボックス)のプロパティーを次のように設定します。

また、「年齢」のコントロールボックス(テキストボックス)のプロパティーを次のように設定します。

上記のように設定すれば、図1のようなフォームになります。