| 
    
     |  | kenji さん、おはようございます。 
 >そうですか...割り切って使う事も必要かもしれませんね。何しろ初心者のためマクロを
 使えば何でも簡単にできてしまうというイメージがあったものですから。
 
 (こういう)機能を載せることの弊害を考えたら、/での入力に慣れてもらうほうがいいのか、使う側の意見も聞いたほうがいいですよ。
 ちなみに弊害
 ・実行時のエラーへの対応(OS、Varsionの違い当によるもの、記述ミス)
 ・マクロブックの警告がうっとおしい
 ・セキュリティ高だと実行されない
 ・保存するときにちょっとサイズが大きい
 ・アンチウィルスで常時監視してる場合は、保存・読込が遅い
 などなど。
 
 で、本文。
 
 シートのChangeイベントを利用します(Moduleではなく該当するSheetに記述します)。
 A列のセルに、「.」の入った文字列が入力されたとき、. が / におきかわります。
 
 Private Sub Worksheet_Change(ByVal Target As Excel.Range)
 With Target
 'A列が日付
 If .Column = 1 Then
 If .Count = 1 Then
 If InStr(.Value, ".") > 0 Then
 .Value = Application.WorksheetFunction. _
 Substitute(Format(.Value, "0.00"), ".", "/")
 End If
 End If
 End If
 End With
 End Sub
 
 10月1日は10.01、1月1日は1.01です。
 
 マクロも期待するほどすごい効果があるものでもないですが、使い込むほど幅が広がる(と思う)ので、過去ログに色々面白いサンプルがあるので試してみられては?
 
 |  |