Excel VBA質問箱 IV

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

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


38420 / 76738 ←次へ | 前へ→

【43455】Re:表示方法の変更
発言  ichinose  - 06/10/16(月) 18:13 -

引用なし
パスワード
   ▼kazu さん:
こんばんは。

Private Sub Worksheet_Change(ByVal Target As Range)
 Const addr = "$a$1"
 Dim rng As Range
 With Application
  .EnableEvents = False
  Set rng = .Intersect(Range(addr), Target)
  If Not rng Is Nothing Then
    With Target
     .NumberFormatLocal = "標準"
     If Val(.Value) >= 1 And Val(.Value) <= 12 Then
       .Value = DateSerial(IIf(Month(Date) = 12 _
           And Val(.Value) <> 12, _
           Year(Date) + 1, Year(Date)), Val(.Value), 1)
       .NumberFormatLocal = "m""月""d""日"""
     Else
       MsgBox "nogood"
       End If
     End With
    End If
  .EnableEvents = True
  Set rng = Nothing
  End With
End Sub

でためしてみてください。
でも、これだと今年と来年1月1日の区別が付かなくなりますけどね!!

0 hits

【43450】表示方法の変更 kazu 06/10/16(月) 16:37 質問
【43454】Re:表示方法の変更 立ち寄り 06/10/16(月) 18:06 回答
【43464】Re:表示方法の変更 kazu 06/10/16(月) 20:04 発言
【43475】Re:表示方法の変更 立ち寄り 06/10/16(月) 23:47 回答
【43480】Re:表示方法の変更 kazu 06/10/17(火) 1:48 発言
【43484】Re:表示方法の変更 ichinose 06/10/17(火) 8:31 発言
【43485】Re:表示方法の変更 立ち寄り 06/10/17(火) 9:37 回答
【43455】Re:表示方法の変更 ichinose 06/10/16(月) 18:13 発言
【43462】Re:表示方法の変更 kazu 06/10/16(月) 19:58 お礼

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