当我在同一行的另一个单元格中插入值时,如何让 Excel 自动在单元格中插入今天的日期和当前时间?
我知道 CTRL + ; 和 CTRL + : 快捷方式,但我更喜欢单元格能够自动填充。
答案1
如果你喜欢编写 VBA,你可以用Worksheet
Change
事件。
下面是一些示例代码,每当您更改 A 列中的单元格时,它都会在 B 列中写入今天的日期和时间:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim CellToChange As Range
'Check the change happened in Column A (i.e. 1)
If Target.Column = 1 Then
'The Cell we want to change is on this row, but in Column B (i.e. 2)
Set CellToChange = Target.Worksheet.Cells(Target.Row, 2)
'Only write in Today's date and the time if the cell is empty
If IsEmpty(CellToChange) Then
CellToChange.Value = Now
End If
End If
End Sub
如果您需要在不同的列中进行更改,只需更改列号:
If Target.Column = 1 Then
和:
Set CellToChange = Target.Worksheet.Cells(Target.Row, 2)
要在您的工作表上获取此代码Alt+F11
,请双击左侧树视图中的工作表,然后将代码粘贴到出现的窗口中。
答案2
我猜你可以用公式 =if(cell1="";"";today()) 预先填充列,但每次打开电子表格时都会自动更新,我认为没有办法让它在你填写单元格时填写日期,然后将其保留在该日期。无论如何,不进行一些编程就不行。