[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『カレンダーコントロールについて』(らいこ)
Excel2007 VBA カレンダーコントロールについて
「A1セルを選択したら、カレンダーが表示されて、日付を選ぶとA1に反映され、カレンダーが非表示になる」
は作成できたのですが、
「A1セルを選択したら、カレンダーが表示されて、日付を選ぶとA1に反映され、カレンダーが非表示になり、
日付を選ばずに、他のセルを選択した場合、カレンダーは非表示になる」 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
下線を追加したいのです。
当方で現在利用しているコードです↓
Private Sub Calendar1_Click()
Selection.Value = Calendar1.Value
ActiveSheet.Calendar1.Visible = False
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$1" Then
ActiveSheet.Calendar1.Visible = True
End If
End Sub
よろしくお願いいたします。
< 使用 Excel:Excel2007、使用 OS:Windows7 >
カレンダーコントロールについては、実際には、エクセルVBAでの使用は、ほとんどのケース、【違反行為】かな? 2007あたりまでは、従来路線(?)で、だめだけど目こぼし(?) これが2010あたりでは、MSの理屈としても【違反】だと、そういえるための布石(としか思えないんですが)で Accessからこのコントロールそのものをなくした。2013 になると、いよいよ、ライセンス管理が厳しくなっているので 新規作成はできなくなる模様。(従来作成済みのコードを動かす分には動くようだけど)
http://kojikoji75.hatenablog.com/entry/2013/08/17/175328
http://www.h3.dion.ne.jp/~sakatsu/Excel_Tips06.htm
ということで、当方、2013 なので、実際に書いて確認できないので、間違っていたらごめん。
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Address = "$A$1" Then ActiveSheet.Calendar1.Visible = True Else ActiveSheet.Calendar1.Visible = False End If End Sub
(β) 2015/04/25(土) 18:15
このスレッドの下の方にnagashimaさんという方が作成された Excel用のカレンダーコントロールがあります。 コード長いですが、根気よく調べていけば便利なコードですよ!! これを使えば、ライセンスうんぬんは解決できます。
私も、試してみましたが、これで十分でした。 ただ、バグや機能追加は、ご自分で中身を吟味しなければなりませんよ!!
(ichinose) 2015/04/25(土) 18:31
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.