|
▼小僧 さん:
こんにちは。
>コマンドボタンの名前を仮に左上段から「c1」「c2」とつけて行き、
>
>
>日 月 火 水 木 金 土
>
>c1 c2 c3 c4 c5 c6 c7
>c8 c9 c10 c11 c12 c13 c14
>…
>…
> c42
>
>の様なフォームを作成します。
>(c1、c2等はコマンドボタンです)
>
>フォーム読み込み時のイベントに下記モジュールを書いて下さい。
>
>
>Option Compare Database
>Option Explicit
>
>Private Sub Form_Load()
>
> Call MakeCalender(2008, 5)
>
>End Sub
>
>
>Sub MakeCalender(CurrentYear As Long, CurrentMonth As Long)
>Dim i As Long
>Dim First_Day As Long '初日が何番目のコントロールか
>Dim Last_Day As Long '末日が何番目のコントロールか
>
> First_Day = Weekday(DateSerial(CurrentYear, CurrentMonth, 1))
> Last_Day = DateDiff("d", DateSerial(CurrentYear, CurrentMonth, 1), _
> DateSerial(CurrentYear, CurrentMonth + 1, 0)) + First_Day
>
>'初日が入るまでは空白を代入
> For i = 1 To First_Day - 1
> Me.Controls("C" & i).Caption = ""
> Next i
>
>'初日から末日までは日付を代入
> For i = First_Day To Last_Day
> Me.Controls("C" & i).Caption = i - First_Day + 1
> Next i
>
>'末日が入るまで空白を代入
> For i = Last_Day + 1 To 42
> Me.Controls("C" & i).Caption = ""
> Next i
>
>End Sub
>
>
>2008年5月度の表示ができれば成功ですね。
出来ました。有難うございます。
引き続き、自分なりにやってみます。
|
|