
Excelでアンケートの回答や、提出物などを管理するのにチェックリストを作ったときに、いつ回答したのか、いつ提出したのかを記録するために1人1人日付を入力することがありますが、手入力だと面倒なので、クリックしたら日付が入るようにしました。
サンプルを記録します。
下図は、Excel2016です。
< スポンサーリンク >
セルをクリックしたら自動で日付が入る方法
[開発]タブ>[コードの表示]をクリックします。
オブジェクトボックスを「Worksheet」を選択します。
自動で「Private Sub Worksheet_SelectionChange(ByVal Target As Range)」となるので、「Private Sub Worksheet_SelectionChange(ByVal Target As Range)」と「End Sub」の間に次のコードを書きます。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
‘シート用変数
Dim ws As Worksheet
‘シートを変数に
Set ws = ThisWorkbook.Worksheets(“Sheet1”)
‘複数選択されている場合は終了
If Target.Count > 1 Then
Exit Sub
End If
‘選択されたセルが何か入力されている場合 または
‘C1に値が入っていない場合は終了
If Target.Value <> “” Or ws.Range(“C1”).Value = “” Then
Exit Sub
End If
‘入力範囲かどうかチェック用変数
Dim cheRng As Range
‘入力範囲(C4~C10)かどうかを調べるために変数に
Set cheRng = Application.Intersect(Target, ws.Range(“C4:C10”))
‘入力範囲ではない場合
If cheRng Is Nothing Then
Exit Sub
End If
‘選択されたセルにC1の値を入力
Target.Value = ws.Range(“C1”).Value
End Sub
セルをクリックするとC1の日付が自動で入力されます。
こんな記事も書いています