締切済み

カレンダーの日付をTextBoxに表示するには?

  • 暇なときにでも
  • 質問No.9563926
  • 閲覧数89
  • ありがとう数0
  • 気になる数1
  • 回答数1
  • コメント数0

お礼率 71% (25/35)

 Access の VBA を最後に書いたのは18年前。でも、どうしても気になっていることがあって、今日、ちょっとクラスモジュールとやらに挑戦してみた。それは、添付図のようなカレンダーの日付ラベルをクリックしたら、”日”という名のテキストボックスに表示させるというもの。

【クラスモジュール】

Option Compare Database

Public WithEvents accLabel As Access.Label
Public accOutput      As Access.TextBox

Public Sub Bind(xLabel As Label, xTextBox AS TextBox)
  Set Me.accLabel = xLabel
  Set Me.accOutput =xTextBox
  accLabel.OnClick = "[EVENT PROCEDURE]"
End Sub

Private Sub accLabel_Click()
  Me.accOutput = accLabel.Caption
End Sub

【フォームのコード】

Option Compare Database

Dim myMulti(37) As New Class1

Private Sub Form_Open(Cancel As Integer)
  Dim I As Integer
  
  For I = 1 To 37
    myMulti(I).Bind Me.Controls(Format(I, "日付_00")), Me.日
  Next I
End Sub

 一応は、これで目的を達したが・・・。今一、しっくりしない。ラベル一個ごとに書き込むテキストボックスを設定しない書き方があるように思えてしょうーがない。

 当方、IT業界とは縁もゆかりもないど素人の爺(69歳8ヶ月)。その辺りを考慮されて、優しーく手ほどきの程をお願いします。

PS、マルチイベントで発生した値の受け渡しは懸案事項。

 かって、同様のクラスモジュールを書いたことがあるが、その時も、値の受け渡しでは中途半端に終わった。まあ、もはや、どうでもよいことだが・・・。気になって、気になって

回答 (全1件)

  • 回答No.1

ベストアンサー率 43% (190/438)

こんばんは
私の能力では理解できない命令文が有って、アドバイスする立場では無いのですが
回答がないので、疑問程度に見て下さい

>Dim myMulti(37) As New Class1
 For I = 1 To 37
添付画像の日付のボックスは42個あり
 Dim myMulti(42) As New Class1
 For I = 1 To 31
 または
For I = Weekday(日付)To 37
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

ピックアップ

ページ先頭へ