Microsoft Access 掲示板

hatena chips様のスケジュール管理フォーム

32 コメント
views
4 フォロー

お世話になります。

hatena chips様のカレンダー形式のスケジュール管理フォームを使わせて頂いているのですが、開いたときに、当日のスケジュールを表示するには、VBAをどのようにすればよろしいでしょうか?

ご教授頂けましたら幸いです。よろしくお願いいたします。

CROSS
作成: 2021/09/24 (金) 13:25:46
通報 ...
1

F_Calendarフォームの開く時のイベントプロシージャを下記のように修正してください。
Me.txtDate に代入した日付の月が表示されます。

'フォーム 開くとき
Private Sub Form_Open(Cancel As Integer)
Dim i As Integer
    
    For i = 1 To 42
        Me("T" & i).OnClick = "=SetDate(" & i & ")"
    Next
    Me.cmdPrev.OnClick = "=MoveMonth(-1)"
    Me.cmdNext.OnClick = "=MoveMonth(1)"
    Me.txtDate = Date  '<--修正
    SetCalendar
End Sub
2
CROSS 2021/09/24 (金) 15:24:53 dd71f@d523b

hatena様
直接早々にご返事ありがとうございます。

実行時エラー'2465':
指定された式で参照されている'T44463'フィールドが見つかりません。

デバッグすると

'カレンダー 日にち設定関数
Private Sub SetCalendar(aDate As Date)
Dim i As Integer, D As Date, m As Integer, n As Integer

    If Not IsNull(Me.txtDate) Then
        Me("T" & Me.txtDate - FirstDay).BackStyle = 0 '透明

と表示されてしまいます。

再度お願いできますでしょうか?

3

F_Calendarフォームのコードを修正した後、フォームを閉じずにフォームビューにすると、そのエラーになります。
いったん、フォームを閉じてから開くとどうでしょう。

4
CROSS 2021/09/25 (土) 08:09:43 dd71f@d523b

hatena様
ご教授ありがとうございます。
やはり同じエラーが表示されます。

頂いた部分ですが
SetCalendarのままですと、コンパイルエラーになり、”引数は省略できません”と表示されるため
SetCalendar DLookup("日付", "T_予定")としていますが、こちらがまずいのでしょうか?

本カレンダー重宝しておりグループでの運用を検討しております。

予定者毎に色を変えたり、やりたいことがいろいろあります。たびたびになり申し訳ございませんが是非ご教授ください。

5
hatena 2021/09/25 (土) 09:55:13 修正

カレンダー形式のスケジュール管理フォーム作成 その4 - hatena chips
上記のサンプルを使用しているなら、下記に修正してください。

'フォーム 開くとき
Private Sub Form_Open(Cancel As Integer)
Dim i As Integer
    
    For i = 1 To 42
        Me("T" & i).OnClick = "=SetDate(" & i & ")"
    Next
    Me.cmdPrev.OnClick = "=MoveMonth(-1)"
    Me.cmdNext.OnClick = "=MoveMonth(1)"
    SetCalendar Date  '<--修正
End Sub

前の回答のコードはその3用のコードでした。