Excel VBA質問箱 IV

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

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


38425 / 76738 ←次へ | 前へ→

【43450】表示方法の変更
質問  kazu  - 06/10/16(月) 16:37 -

引用なし
パスワード
   セルA1に1と入力でセルA1に1月1日と表示
また、セルA1に2と入力でセルA1に2月1日と表示
つまり1と入れたら1月1日、2と入れたら2月1日、3と入れたら3月1日、
・・・・・12と入れたら12月1日と表示するには。
ただし、12月になって1と入れた時は、来年の年月日で表示するように。
で回答をもらいありがとうございました。
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)
       Else
         MsgBox "nogood"
         End If
       End With
     End If
    .EnableEvents = True
    Set rng = Nothing
    End With
End Sub
セルA1に1と入力すると2006/1/1と表示します。
この表示方法を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 お礼

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