Excel(2003) - 单元格上的自动插入日期

Jop*_*ppe 2 excel vba

我真的不知道这是否是一个编程问题,但我相信你们其中一个人可以轻松地帮助我解决这个问题.

我试图在Excel中创建一个自动"插入日期"功能.即当一个人在我的Excel文档中连续输入数据时,我希望另一个单元格自动显示插入日期.

站在牢房内我试图显示日期,我写了以下内容:

=IF(ISBLANK(C20);1;TODAY())
Run Code Online (Sandbox Code Playgroud)

这很好用,直到我在第二天打开它.显然它会将日期设置为"TODAY",但如果我希望它只更新一次,在插入时 - 我该怎么做?

想这样的事情(Java - 伪).

IF(!OTHER.CELL.ISBLANK() && THIS.CELL.ISBLANK()){
   THIS.CELL = TODAY();
}
Run Code Online (Sandbox Code Playgroud)

现在,如何在Excel中执行此操作?

提前致谢.

bre*_*tdj 7

您将使用该Worksheet_Change事件

  1. 右键单击工作表选项卡
  2. 查看 - 代码
  3. 复制并粘贴在下面的代码中

这段代码

  • 跟踪和更改活动表的C列
  • 将当前数据和用户登录名放入D列中的每个相应单元格

仅按此行中的指定捕获已更改的C列单元格 Set rng1 = Intersect(Range("C:C"), Target)

Application.EnableEvents = False用于停止代码时列d被写入再烧制

您可以轻松地将其调整为
1)写入不同的(可能隐藏的)日志表
2)写入文本文件

如果您想要任何更新,请告诉我

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng1 As Range
Set rng1 = Intersect(Range("C:C"), Target)
If rng1 Is Nothing Then Exit Sub
Application.EnableEvents = False
rng1.Offset(0, 1).Value = Now() & " - " & Environ("username")
Application.EnableEvents = True
End Sub
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述