|
こんにちは。かみちゃん です。
>カレンダーコントロールに対して、下記コードでイベント待ちです。
>Private Sub Calendar1_NewYear()
> Me.和暦.Text = Format(DateSerial(Calendar1.Year, 1, 1), "ggee年")
>End Sub
>カレンダー右上の、年度の選択(年を選択するcomboboxの様な所)を行うと
>上記のイベントが発生しますが、Calendar1.Year=0となり、0=2000年=H12年
>となってしまいます。
>年を選択した時点で、選択した年の値(西暦)を取得する方法が知りたいのです。
仕組みおよび理由は、私も難しいので、説明はできませんが、以下のような方法
にするとできると思います。
Calendar1.Day(.Valueではなく)を一旦、別の日に移動して、元に戻すことで
できるようです。
Private Sub Calendar1_NewYear()
Dim NewMon As Integer
Dim NewYea As Integer
Calendar1.Day = Day(Date + 1)
Calendar1.Day = Day(Date)
Me.TextBox1.Text = Format(DateSerial(Calendar1.Year, 1, 1), "ggee年")
End Sub
参考にしたのは、以下のURLです。
http://hanatyan.sakura.ne.jp/logbbs/wforum.cgi?mode=allread&no=8577
http://hanatyan.sakura.ne.jp/logbbs1/wforum.cgi?mode=allread&no=8316&page=90
また、動作確認はしていませんが、以下のような方法もあるようです。
http://support.microsoft.com/kb/193967/ja
曖昧な説明で申し訳ありません。
※投稿の際は、引用は必要最小限のものでいいです。
スレッド一覧で見ると、経緯はわかるからです。
|
|