• ベストアンサー

カレンダーコントロールで複数のテキストボックスに日付入力

アクセスでカレンダーコントロールを使用し、タイトルのことをしたいと考えています。 カレンダーコントロールをクリックする前にキャレットがあったコントロールにカレンダーコントロールのValueを代入したいと考えています。 複数のテキストボックスなのでそのコントロールの名前を取得しないといけないと思いますが、コードをどう書くのかがわかりません。 可能な限りコードで示して頂けるとわかりやすく助かります。丁寧に教えて頂ける方、よろしくお願いします。

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

  • ベストアンサー
  • tksoft
  • ベストアンサー率36% (99/273)
回答No.1

まず。適当な非表示のテキストボックスを一つ作成します。これは、カレンダーコントロールをクリックする直前のコントロール名を記憶させるものなので、グローバルな変数でも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

zihard99
質問者

お礼

早速の回答ありがとうございます。まだ試していませんがばっちりできそうな気がします。試し後報告いたします。

関連するQ&A