dポイントプレゼントキャンペーン実施中!

ネット検索で調べてみてもわからないので
教えてください。
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim r As Range
For Each r In Target
If r.Column = 3 Then
r.Offset(0, -1).Value = Format(Now, "hh:mm:ss")
End If
Next r
End Sub

エクセルのセル3列目に入力した時刻を隣のセル2列目に自動入力されるようになっています。
同じエクセルシート上で6列目のセルに入力したら隣のセル5列目に時刻を自動入力反映されるようにしたいのですが分かる方ご教示ください。よろしくお願い致します。

質問者からの補足コメント

  • ご教示ありがとうございます。
    返信が遅くなり申し訳ありません。
    教えていただいたコードにて作成致しましたが、3列目、6列目共に入力後にエラー表示がでてしまいます。
    実行時エラー'424':
    オブジェクトが必要です。と表示されます
    Taget.Offset(0, -1).Value = Format(Now, "hh:mm:ss")のところが黄色ラインで表示されています。よろしければ、アドバイスをお願い致します。

    「Vba作成コード修正」の補足画像1
    No.1の回答に寄せられた補足コメントです。 補足日時:2023/12/12 08:47
  • ご教示ありがとうございます。
    返信が遅くなり申し訳ありません。
    教えていただいたコードにて作成致しましたが、3列目、6列目共に入力後にエラー表示がでてしまいます。
    実行時エラー'424':
    オブジェクトが必要です。と表示されます
    Taget.Offset(0, -1).Value = Format(Now, "hh:mm:ss")のところが黄色ラインで表示されています。よろしければ、アドバイスをお願い致します。

    「Vba作成コード修正」の補足画像2
    No.1の回答に寄せられた補足コメントです。 補足日時:2023/12/12 08:47
  • ご教示ありがとうございます。
    返信が遅くなり申し訳ありません。
    教えていただいたコードにて作成致しましたが、3列目、6列目共に入力後にエラー表示がでてしまいます。
    実行時エラー'424':
    オブジェクトが必要です。と表示されます
    Taget.Offset(0, -1).Value = Format(Now, "hh:mm:ss")のところが黄色ラインで表示されています。よろしければ、アドバイスをお願い致します。

    「Vba作成コード修正」の補足画像3
    No.1の回答に寄せられた補足コメントです。 補足日時:2023/12/12 08:48
  • ご教示ありがとうございます。
    返信が遅くなり申し訳ありません。
    教えていただいたコードにて作成致しましたが、3列目、6列目共に入力後にエラー表示がでてしまいます。
    実行時エラー'424':
    オブジェクトが必要です。と表示されます
    Taget.Offset(0, -1).Value = Format(Now, "hh:mm:ss")のところが黄色ラインで表示されています。よろしければ、アドバイスをお願い致します。

    「Vba作成コード修正」の補足画像4
    No.1の回答に寄せられた補足コメントです。 補足日時:2023/12/12 08:48
  • ご教示ありがとうございます。
    返信が遅くなり申し訳ありません。
    教えていただいたコードにて作成致しましたが、3列目、6列目共に入力後にエラー表示がでてしまいます。
    実行時エラー'424':
    オブジェクトが必要です。と表示されます
    Taget.Offset(0, -1).Value = Format(Now, "hh:mm:ss")のところが黄色ラインで表示されています。よろしければ、アドバイスをお願い致します。

    No.1の回答に寄せられた補足コメントです。 補足日時:2023/12/12 08:49

A 回答 (1件)

Private Sub Worksheet_Change(ByVal Target As Range)


 If (Target.Column = 3 Or Target.Column = 6) And Target.Value <> "" Then
  Target.Offset(0, -1).Value = Format(Now, "hh:mm:ss")
 End If
End Sub

これでいかがでしょう
この回答への補足あり
    • good
    • 0

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