在任何时候更新或更改列中的任何单元格时,使用当前date自动更新Excel中的单元格

不知道在Excel中这是否可行,但是我希望每次更改K11:K119任何一个单元格时,将使用今天的date更新单元格K9。 K11:K119中的某些单元格是空白的,但可以随时将数据input到它们中。 已经有数据的K11:K119中的单元格可能会更改。 所以我希望cell K9随着今天的date更新任何时候K11:K119任何单个空白单元格用数据更新,或者任何时候K11:K119单个单元格中的数据更改。 希望是有道理的。

在工作表代码区域中放置以下事件macros:

 Private Sub Worksheet_Change(ByVal Target As Range) Dim r1 As Range, r2 As Range Set r1 = Range("K9") Set r2 = Range("K11:K119") If Not Intersect(Target, r2) Is Nothing Then Application.EnableEvents = False r1.Value = Date Application.EnableEvents = True End If End Sub 

macros监视您对工作表的更改。 如果更改input范围中的任何值,则会刷新具有date的单元格。

因为它是工作表代码,所以安装和自动使用非常简单:

  1. 右键单击Excel窗口底部附近的选项卡名称
  2. select查看代码 – 这会popup一个VBE窗口
  3. 粘贴东西,closuresVBE窗口

如果您有任何疑问,请先在试用工作表上尝试。

如果您保存该工作簿,该macros将与它一起保存。 如果您在2003年以后使用的是Excel版本,则必须将该文件另存为.xlsm而不是.xlsx

要删除macros:

  1. 调出上面的VBE窗口
  2. 清除代码
  3. closuresVBE窗口

要了解有关macros的更多信息,请参阅:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

要了解有关事件macros(工作表代码)的更多信息,请参阅:

http://www.mvps.org/dmcritchie/excel/event.htm

macros必须启用这个工作!

如果你不想启用macros,试试更简单:

 =IF(COUNT(K11:K119)>=0,TODAY(),0) 

COUNT(range)将始终是≥0(所以不要紧,你把它作为第三个参数),它总是更新,当范围的任何成员改变。