• ベストアンサー

セルに文字を入力した日を別のセルに表示させたい

セルA1には「×」が入力されていて この「×」が「○」に変わった日を、セルB1に表示させたいです。 (※その表示される日は固定させる) 「○」に変わった日を、セルB1で Ctrl +;キーで表示すればすむ話ではありますが 自動的に表示される方法があるのであれば、ちょっとでもラクをしたいです(笑) 調べていたところ シート名を右クリックして『コードの表示』を選択してコードを貼り付ける方法を見つけたのですが その方法は、セルに文字を入力した日を表示させる方法だったので http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1216349717?fr=chie-websearch-1&k=HcMKlov.70mDzVhMRZleWnNudYpKoEkRqE1VuuoUf6pHgodu3O3vqG4bUVuOLvq9ikgThjpnLFWob2GqtjrJDY_ruhlsfWLN6v0NaHBFirNVstbbbM7WYZy6FUGsQWj3SnHn8ZM8EgMifr4mAv.yNObqN7WT3CMghTwOlsaOgqJhT1tBKyxJTBbB7jf93cBmq2V5fl3et.lJVL5fn2i2EaIMbD4XjKY260pVKvpVad3Ilo_eewhJb3fGo3f4ZgZHg1_k0PB7BUwdI3cGGe8N3h3GdtVdujCTkGlKDizNhei_eFrgnJFGBYOJBwkGRjyzNPqwZZ8c8JeMzR43cvduQQvqZcsD74mnJlrNlThSolqo21qJ6M1.Q5K8ZUqYP3ZP5X.CCFzqgujUh7r9AFzjmi54gqNdFujyFsUKD_CfKsyGVTQqQYaii75YSRvrXWpC_T5yIq7KQC0- すでにセルに入力されている文字が お目当ての文字に変わった日を表示できる方法があれば 教えてください。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

merlionXXです。 では、これでどうでしょう? オートフィルにも対応させました。 Private Sub Worksheet_Change(ByVal Target As Range) Dim c As Range If Intersect(Target, Range("A1:A50")) Is Nothing Then Exit Sub For Each c In Intersect(Target, Range("A1:A50")) If c.Value = "○" Then c.Offset(0, 1).Value = Date Else c.Offset(0, 1).ClearContents End If Next End Sub

ajyapa-paso
質問者

お礼

ふたたびのアドバイス、ありがとうございました! 私の考えていたことができるようになって感激です♪ またなにかありました時は、よろしくお願いします。(^^)

その他の回答 (2)

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.3

一例です Private Sub Worksheet_Change(ByVal Target As Range) Dim Rng As Range Application.EnableEvents = False For Each Rng In Target If Not Intersect(Rng, Range("A:A")) Is Nothing Then If Rng.Value = "○" Then Rng.Offset(, 1).Value = Date End If End If Next Application.EnableEvents = True End Sub

ajyapa-paso
質問者

お礼

アドバイス、ありがとうございました。 こちらの方法も参考とさせていただきます。(^^) またなにかありましたときは、よろしくお願いします。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address(0, 0) <> "A1" Then Exit Sub If Target.Value <> "○" Then Exit Sub Range("B1").Value = Date End Sub ですね。

ajyapa-paso
質問者

補足

さっそくのアドバイスありがとうございます。 うまく表示ができました(^^) 今は「A1」「B1」とセルを指定していましたが もしA列の複数セルに表示されている「×」のどれかが「○」に変わったときにも その変えた日が「B列」のセルに表示させることはできるでしょうか? EX)A列のA1~A50まで「×」の表示あり  A5のセルに変更があった→B5のセルに変更があった日を表示  A9のセルにも変更があった→A9のセルに変更があった日を表示