方法一:(此方法其实是适用于如果在B列输入数值,则A列自动输入日期)
使用迭代
先要设置:工具-选项-自动重算-迭代 1次
如果需要记录时间的内容输入在B1,在A1中输入以下公式后下拉:
=IF(B1="","",IF(A1="",NOW(),A1))
方法二:
右击sheet1标签>查看代码>粘贴下面的代码 来源:http://club.excelhome.net/viewthread.php?tid=439225
Private Sub Worksheet_Change(ByVal Target As Range)
For Each c In Target.Cells ‘如果用填充等同时改变了多个单元格,则一个个的进行判断
With c
If .Column = 2 Then ‘判断被改变的单元格是否在B列
Application.EnableEvents = False
.Offset(0, -1) = Date ‘如果在B列,则在同行的A列填充当前系统日期
Application.EnableEvents = True
End If
End With
Next
End Sub
上面的代码其实很容易看懂,不过我也还是给解释一下
If .Column = 2 表示第二列的任意个单元格发生变化,如果你是第三个单元格,则改成 If .Column = 3,以此类推。
.Offset(0, -1) = Date 这个可以望文生义,offset表示偏移,比如.Offset(0, -1)表示同行左边一列 .Offset(0,2)表示同行右边数2列 ,.Offset(1,2)表示下面一行,右边数2列,=date表示将这个单元格改成当前的日期。
--------------------------------------------------------------------------------
关注微信公众号(测试工程师小站)即可在手机上查阅,并可接收更多测试分享,发送【测试资料】更可获取百G测试教程~