|
▼hatena さん
ご教示ありがとうございます。onclickは完璧に作動しました。感激のレスポンスの早さです。ありがとうございました。
後、下記ご指導頂いた部分を作ってみました。
>当然、可能です。ループ内で、Caption や OnClickプロパティの設定をしてますが、
>そこで、条件に応じて、BackColorの設定をすればいいだけです。
生徒さんごとで色を変える受講曜日や出席日が違うので、今度は
Form_Current()のイベントに下記Function SetColorを呼び出す形にしてみたのですが、FormatConditions.Addの行で「オブジェクトはこのプロパティまたはメソッドをサポートしていません」と出ます。どこを直したらよろしいでしょうか?
あるいは、根本的に間違っているかも知れませんが、よろしくご指導お願いいたします。(まずは、出席日の色変えの部分だけです。)
Private Function SetColor(y As Integer, m As Integer)
Dim i As Integer, j As Integer, FirstDay As Date, s As Integer
Dim db As DAO.Database
Dim RS As DAO.Recordset
Set db = CurrentDb()
Set RS = db.OpenRecordset("出欠", dbOpenTable)
Do Until RS.EOF
If RS!生徒番号 = Me.生徒番号 Then
For j = -3 To 2
FirstDay = DateSerial(y, m + j, 1)
s = Weekday(FirstDay)
For i = 0 To Day(DateSerial(y, m + j + 1, -1))
With Me(Chr(Asc("D") + j) & i + s)
.FormatConditions.Add(acExpression, , _
"#" & FirstDay + i & "# =" & RS!出席日) _
.BackColor = RGB(112, 252, 175)
End With
Next
Next
End If
RS.MoveNext
Loop
End Function
Private Sub Form_Current()
SetColor Year(Date), Month(Date)
End Sub
|
|