大侠,请教您一个问题:EXCEL,A列数据手工输入,B列自动生成A列输入时的日期,不能随系统时间的改变而改变

谢谢!
2024-12-26 09:06:04
推荐回答(2个)
回答1:

你所说的情况只能使用宏。按 alt + F11 启动VBA, 在左边的小窗口,显示有你需要输入数据的工作表名称,双击这个工作表名称,然后在右边的空大窗口输入如下代码就可以了:

Public Sub Worksheet_Change(ByVal Target As Range)
On Error Resume Next
'遇到错误继续运行代码

If Target.Column = 1 And Target.Text <> "" Then
'用if函数,如果活动单元格为A列(1就是A列,这里你可以更改为任意列,比如2=B列,3=C列,4=D列等等)且单元格内容为空,则执行下列动作

Target.Offset(0, 1) = Now
Selection.NumberFormatLocal = "yyyy-m-d h:mm;@"

'活动单元格的后一列自动填充时间,格式为"yyyy-m-d h:mm;@"

End If
'完成判断

End Sub
'代码执行完毕

回答2:

这个需要VBA实现。代码:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
x = Target.Row
Cells(x, 2) = Date
End If
End Sub