Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


25991 / 76737 ←次へ | 前へ→

【56082】Re:カレンダの年度(yearプロパティ)
発言  かみちゃん  - 08/6/1(日) 10:07 -

引用なし
パスワード
   こんにちは。かみちゃん です。

>カレンダーコントロールに対して、下記コードでイベント待ちです。
>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

曖昧な説明で申し訳ありません。

※投稿の際は、引用は必要最小限のものでいいです。
 スレッド一覧で見ると、経緯はわかるからです。
1 hits

【56072】カレンダの年度(yearプロパティ) takao 08/5/31(土) 19:39 質問
【56073】Re:カレンダの年度(yearプロパティ) かみちゃん 08/5/31(土) 20:01 発言
【56080】Re:カレンダの年度(yearプロパティ) takao 08/6/1(日) 9:22 質問
【56082】Re:カレンダの年度(yearプロパティ) かみちゃん 08/6/1(日) 10:07 発言
【56094】Re:カレンダの年度(yearプロパティ) takao 08/6/1(日) 16:06 お礼

25991 / 76737 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free