• ベストアンサー

カレンダーコントロールの使い方

フォーム1のイベントで、カレンダーコントロールの挿入されたフォーム2を開く。 日付をクリックした時に、フォーム1のテキストボックスに日付を挿入。 挿入されたと同時に、フォーム2は閉じて、フォーム1がアクティブになる。 という一連の作り方を教えて頂けないでしょうか。 よろしくお願いいたします。

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

  • ベストアンサー
  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.1

>一連の作り方 フォーム2にボタンを作りフォームを閉じる記述を作りフォームを閉じる前にフォーム1のテキストボックスにカレンダーの値を代入させます。 フォーム2の閉じるボタン名をコマンド1・カレンダー名をCalendar1・フォーム1の日付を代入したいコントロール名をテキスト1とした場合。 コマンド1のクリック時のイベントに Private Sub コマンド1_Click() On Error GoTo Err_コマンド1_Click Forms![フォーム1]![テキスト1] = Me!Calendar1.Value DoCmd.Close Exit_コマンド1_Click: Exit Sub Err_コマンド1_Click: MsgBox Err.Description Resume Exit_コマンド1_Click End Sub でフォーム1のテキスト1にフォーム2のCalendar1で選択した日付を代入できます。 フォーム1からフォーム2を開くイベントは下記で Dim stDocName As String Dim stLinkCriteria As String stDocName = "フォーム2" DoCmd.OpenForm stDocName, , , stLinkCriteria

kamoshika333
質問者

お礼

お返事遅くなり申し訳ありません。 無事カレンダーフォームを作ることができました。ただ、イベントの記載が私には難しくて、そのまま丸写ししてしまいましが・・・。

その他の回答 (1)

  • kigoshi
  • ベストアンサー率46% (120/260)
回答No.2

使われるソフトが何か不明ですが、以下、ExcelのVBAでMicrosoftカレンダーコントロール10.0を使った場合を想定しています。 《UserForm1のソース》 Private Sub CommandButton1_Click() UserForm2.Show End Sub 《UserForm2のソース》 Private Sub Calendar1_Click() UserForm1.TextBox1.Text = Calendar1.Value Me.Hide End Sub こんな感じでどうでしょうか? うまくできますように。

kamoshika333
質問者

お礼

ありがとうございます。 エクセルではなくアクセスでした。記載もれでごめんなさい。ただ大変参考になりました。

関連するQ&A