プロが教えるわが家の防犯対策術!

ACCESSでボタンをクリックすると、カレンダーコントロールのダイアログボックスが表示されて、日付が入力出来るようにしたいのですが...
この方法で日付を入力するテキストボックスに共通で使用出来たらと考えています。
カレンダーコントロールのダイアログボックスの作成から分からないのでお願いします。

A 回答 (2件)

前回の質問時に上記提案をしましたので、その続きということで以下に記載します。



1.新規にフォームを作成して、カレンダーコントロールをフォームに貼り付けます。名前をCALとでもしましょう。また、単票形式とします。
2.フォームモジュールを開いて以下のコード記載します。

Option Compare Database
Private ctrTarget As Control '元FormのControl格納変数

Public Sub ControlSet(OriginalControl As Control)
Set ctrTarget = StartControl
End Sub

Private Sub CAL_Click()
ctrTarget = Me.CAL.Value
End Sub

3.このフォームをFormCalenderとして保存します。

4.日付を入力するテキストボックスがあるフォームにボタンを貼り付けます。このボタンのイベント「クリック時」にコードビルダーでダイアログフォームを開く以下のコードを貼り付けます(ここではDateButtonという名前にしました)。

Private Sub DateButton_Click()
DoCmd.OpenForm "FormCalender"
Form_formCalender.ControlSet Me.日付
End Sub

以上で、準備完了です。

上記は4のモジュールで、ダイアログ用フォームを開き、日付値を戻すコントロールを指定します。また、2のモジュールがカレンダーコントロールで日付を選択した時点で、テキストボックスに日付値を代入するものです。
なお、長くなるためエラー制御は記載していません。
最近、書いていないので上手く動かなかったら補足お願いします。
    • good
    • 0

t-tomoさんこんにちは、


新規にフォームを作成して、コントロールの選択ボタンから、カレンダーコントロール?(?はバージョンNo.)を選択して、フォーム上に貼り付けます。
テキストボックスに入力された値をカレンダーコントロールのValueプロパティ(”その他”のタブにあります)に入れてあげれば良いです。逆にカレンダーコントロールの値をテキストボックスに入れるには、カレンダーコントロールのCkickイベントを捕まえて、Valueプロパティの値をテキストボックスのValueプロパティに入れます。
    • good
    • 0

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

関連するカテゴリからQ&Aを探す