カレンダーコントロールで複数のテキストボックスに日付入力
アクセスでカレンダーコントロールを使用し、タイトルのことをしたいと考えています。
カレンダーコントロールをクリックする前にキャレットがあったコントロールにカレンダーコントロールのValueを代入したいと考えています。
複数のテキストボックスなのでそのコントロールの名前を取得しないといけないと思いますが、コードをどう書くのかがわかりません。
可能な限りコードで示して頂けるとわかりやすく助かります。丁寧に教えて頂ける方、よろしくお願いします。
回答(1件)
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示
No.1ベストアンサー20pt
まず。適当な非表示のテキストボックスを一つ作成します。これは、カレンダーコントロールをクリックする直前のコントロール名を記憶させるものなので、グローバルな変数でもOKです。
例えば、値を入力するためのテキストボックスを3つ(それぞれ、TextBox1、TextBox2、TextBox3)と名前保存用のテキストボックス(SaveBox)、
TextBox1、TextBox2、TextBox3それぞれのフォーカス喪失時に次のようなコードを書き、自分の名前を保存します。
Private Sub TextBox1_Exit(Cancel As Integer)
Me("SaveBox") = Me("TextBox1").Name
End Sub
これで、カレンダーをクリックする前に最後にフォーカスのあったコントロール名が分かります。あとは、このコントロールにカレンダーの値を代入すればいいだけです。
Private Sub Calendar0_Click()
Me(Me("SaveBox").Value) = Calendar0.Value
End Sub
この回答へのお礼
早速の回答ありがとうございます。まだ試していませんがばっちりできそうな気がします。試し後報告いたします。
- 最新から表示
- |
- 回答順に表示
- |
- ベストアンサーのみ表示











