プロが教えるわが家の防犯対策術!

いつもお世話になります。
WINDOWS7 EXCELL2010 です。

A1セルに文字列で5桁のID番号を入力するとI4のセルに今日の日付が入るようにマクロを作っています。

このときA1セルをキーボードのBacksPaceでID番号を消してエンターキーを押した時にI4セルも空白にしたいと考えて下記のように作りましたが

If Range("A1") = “”
Range("$I$4") = "0000/00/00"
Else
Range("$I$4").ClearContents

上の構文が上手くゆかず困り果てました。
どのようにすればいいか御指導願えませんでしょうか。

参考に
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$A$1" Then Range("I4").Value = Date


If Range("A1") = “”
Range("$I$4") = "0000/00/00"
Else
Range("$I$4").ClearContents


End Sub

A 回答 (3件)

こんな感じで如何でしょう。



Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$A$1" Then
    If Target.Value = "" Then
      Range("I4").ClearContents
    Else
      Range("I4").Value = Date
    End If
  End If
End Sub
    • good
    • 0
この回答へのお礼

早速の御指導を頂きありがとうございます。
上手くできました。
本当にありがとうございました。

お礼日時:2014/11/15 21:24

良くわからないのですが


Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address = "$A$1" Then
 If Target.Value="" Then
Range("I4").Value = ""
Else
Range("I4").Value = Date
End If
End If
End Sub
    • good
    • 0
この回答へのお礼

早速の御指導を頂きありがとうございます。
上手くできました。
本当にありがとうございました。

ベストアンサーはいつもの悩みの種でNo2の方と両方がうまくできました。
甲乙がつけがたいのですが独断と偏見で決めさせていただきました。

お礼日時:2014/11/15 21:29

誤 if Range("A1") = “”


正 if Range("A1") <> “”
    • good
    • 0
この回答へのお礼

早速ご指導いただきありがとうございます。
試させていただきましたところ下記のところが反転してエラーになります。

Private Sub Worksheet_Change(ByVal Target As Range)

お礼日時:2014/11/15 21:21

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A