• ベストアンサー

Accessのカレンダーコントロールについて

いつもお世話になっております。 Accessのフォーム上に貼り付けるコントロールで クリックするとカレンダーが表示され、日付を選択 することで、テキストボックスに選択した日付が 表示されるという画面を見たことがあります。 どのようにすれば、このコントロールを使えるように できるのでしょう? どうか、よろしくお願いいたします。

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

  • ベストアンサー
noname#22222
noname#22222
回答No.2

「テキストボックスがヌルの場合にクリックすれば」と解釈して・・・ Option Compare Database Option Explicit Private Sub Calendar_Click()   Me.テキスト.SetFocus   SendKeys Me.Calendar, True End Sub Private Sub テキスト_Click()   If Len(Me.テキスト & "") = 0 Then     Me.Calendar.Visible = True   End If End Sub Private Sub テキスト_GotFocus()   If Len(Me.テキスト & "") > 0 And Me.Calendar.Visible Then     Me.Calendar.Visible = False   End If End Sub

sansan33311
質問者

お礼

お礼が遅くなり申し訳ありませんでした。 お教えいただいた方法で実現できました。!!

その他の回答 (2)

  • CHRONOS_0
  • ベストアンサー率54% (457/838)
回答No.3

私が使うのはテキストボックスを直接クリックするのではなく テキストボックスの横にボタンを置いて、 テキストボックスとボタンでコンボのように見せかけておき ボタンを押すとカレンダーコントロールがドロップダウンしたかのように 現れるというものです テキストボックスの横にボタンを置き下向き三角を表示させて 両方でコンボのように見せかけます テキストボックスのしたドロップダウンさせたような位置に カレンダーコントロールをおきます (他のコントロールに重なってもかまいません) カレンダーコントロール、テキストボックスの両方を日付フィールドに結合します 下のコードを書きます フォームを開いたときカレンダーを隠す Private Sub Form_Open(Cancel As Integer) Me.Calendar6.Visible = False End Sub テキストボックス横のボタンを押したときカレンダーを表示 Private Sub コマンド7_Click() Me.Calendar6.Visible = True End Sub カレンダーを押したときテキストボックスにフォーカスを移し カレンダーを隠す Private Sub Calendar6_Click() Me.日付1.SetFocus Me.Calendar6.Visible = False End Sub

sansan33311
質問者

お礼

お礼が遅くなり申し訳ありませんでした。 お教えいただいた方法で実現できました。!!

noname#20377
noname#20377
回答No.1

VBAのツールボックス上で右クリックしてみよう! (Office 2007なのでUIが違うかもしれないが) 「その他のコントロール」って選択肢があったので これで追加できるはず・・・

sansan33311
質問者

お礼

ご返答ありがとうござました。 挿入→ActiveXコントロール でカレンダーコントロールをフォームに貼り付ける ことができました。 しかし実現したいのは、フォーム上のテキスト ボックスをクリックするとカレンダーが表示され、 表示されたカレンダーで日付を選ぶと、カレンダー が消えてテキストボックスに選択された日付が表示 されるという動作なのです。 わかりにくい説明で、申し訳ありません。 どうかよろしくお願いいたします。

関連するQ&A

  • カレンダーコントロールについて

    Access2003+VBA でプログラミングをしています。 他の方の質問も一通り閲覧しましたが、解決しないので教えてください。 Accessのフォーム上に貼り付けるカレンダーコントロールを使い、 カレンダーの日付をクリックして、クリックされた日付をテキストボックスに表示したいのですが、うまくいきません。 試しに、カレンダーをクリックした結果(日付)をメッセージボックスに 表示するようにもしてみましたが、やはり日付は何も表示されません。 何か根本的なところで躓いている気がするのですが、解決出来ません。 何卒、よろしくお願いします。

  • ACCESS カレンダーコントロールで移動

    入力終了したデータをフォームに表示させているのですが、カレンダーコントロール9.0とテキストボックスをコントロールソースにして、日付が数字とカレンダーの日付が押された状態で表示されるようにしています。 レコードセレクタからいちいち任意の日付を探すのは面倒なので、出来ればカレンダーコントロールの日付をクリックまたはダブルクリックすることによりその日にレコードが移動してデータが表示させたいのですが、どのような方法があるでしょうか? 使用しているのはACCESS2000です。何卒、良い知恵がありましたら(そのような感じのことが書いてあるwebページでも構いません)宜しくお願いいたします。

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

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

  • カレンダーについて

    お世話になります。 Web画面でテキストボックスの横にカレンダーのアイコンみたいなのがあってそれをクリックするとカレンダーが表示する入力するフォームをみました。 このような日付入力(カレンダーが表示され、日付をクリックしたらテキストボックスに選択された日付を挿入)がある入力フォームを作成するには一般的、何を使用して作成しているのでしょうか。 JavaScript? PHPで作成しようと思っています。 また参考になるサイトなど、ご存知の方がいましたらアドバイスお願いします。 宜しくお願いします。

    • ベストアンサー
    • PHP
  • access2010の「日付選択カレンダー」

    access2010の「日付選択カレンダー」について、教えてください 1.状況      フォームのテキストボックスを作成し、下記の設定を行いました      書式→をyyyy/mm/dd、日付選択カレンダーの表示→日付 2.教えて欲しい事      アイコンをクリックし、カレンダー操作によりテキストボックスへ設定できますが、      テキストボックスに本日以外の日付(例えば、2020/12/31)を指定し、      カレンダーを起動すると、本日を選択した状態にてカレンダーが表示される      →カレンダーが2020/12/31を選択した状態にて、       カレンダーを起動させる方法を教えてください ※よろしくお願いします。検索してもヒットしません

  • カレンダーコントロールのダイアログボックス

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

  • access2000でカレンダーコントロールをいろいろな場面で

    access2000で1つのカレンダーコントロールをいろいろな(複数の)場面で利用したいと思います。 カレンダーコントロールを置いたフォームは作成しました。→「カレンダーフォーム」 カレンダーフォームで取得した値をテキストボックスに戻すプロシージャも作成し、うまくいっています。 しかし、特定のテキストボックスに対してしか機能しません。 1つのカレンダーフォームで、複数のテキストボックスに入力させるプロシージャを教えてください。 カレンダーフォームの起動は、sample1_frm上のコマンドボタン1、コマンドボタン2やsample2_frm上のコマンドボタン1、コマンドボタン2を押すと起動するようにしたいと思います。 sample1_frm上のテキストボックス1(横にコマンドボタン1)やテキストボックス2(横にコマンドボタン2)があるので、それに対応したテキストボックスにカレンダーコントロールで取得した値を代入する方式です。 どのように1つのカレンダーフォームで各フォーム、テキストボックスに対応したコードを書けばよいでしょうか?

  • Accessのカレンダーコントロールについて

    いつもお世話になっております。 アクセスのカレンダーコントロール(MSCAL.ocx)に ついて教えてください。 コントロールを表示して日を指定します。 その後コントロール上にある年を指定するコンボボックスで別の年を指定します。 するとコントロール上は日が指定されていない状態 になりますが、 Me.Calendar.Value には以前にしていした日付が残っています。 実現したいのは年を指定するコンボボックスで 別の年を指定した場合、その指定された年数を 知りたいのですが、Me.Calendar.Valueには 以前の日付が入っているため、知ることが できません。 何かいい方法はないでしょうか? よろしくお願いいたします。

  • VBA_カレンダーコントロールの和暦表示

    現在、フォーム上にカレンダーコントロールを作成して クリックされた日付をテキストボックスに返すものを作成しているのですが カレンダーコントロールの年の表示は西暦になっています。 この部分を和暦にしたいのですが、いじくるところがまったく見当たりません。 何か方法はあるのでしょうか? ご教授お願いいたします<(_ _)>

  • Access カレンダー

    アクセス+VBAです。 フォームの作成でツールボックスの中にある「コントロールの選択」の一番下にあるカレンダーコントロール9.0を使いたいのですが・・・ フォームが開いた時にこのカレンダを今日の日付けにセットするには、どのようにするのでしょうか?