怎么修改可以修复,就是在表格中编辑后自动添加时间批注

游客 发布于 2023-12-08 阅读(21)
要在Excel表格中编辑后自动添加时间批注,你可以通过使用VBA(Visual Basic for Applications)宏来实现。以下是一个简单的步骤说明:

启用VBA编辑器:

首先,你需要在Excel中启用VBA编辑器。这可以通过点击“文件” > “选项” > “自定义功能区”,然后在“开发工具”前打勾并点击“确定”来完成。

打开VBA编辑器:

在“开发工具”选项卡中,点击“Visual Basic”,这将打开VBA编辑器。

插入一个新的模块:

在VBA编辑器中,右键单击项目资源管理器中的工作簿名称,然后选择“插入” > “模块”。

粘贴VBA代码:

在新插入的模块中,复制并粘贴以下VBA代码:

vba

Private Sub Worksheet_Change(ByVal Target As Range)

Dim cell As Range

Application.EnableEvents = False ' 禁用事件以避免循环触发

For Each cell In Target.Cells

If cell.HasFormula = False Then

With cell.AddComment

.Visible = False

.Text Application.UserName & " 已于 " & Now() & " 编辑此单元格"

End With

End If

Next cell

Application.EnableEvents = True ' 重新启用事件

End Sub

保存和关闭VBA编辑器:

单击VBA编辑器菜单栏上的“文件” > “关闭并返回到Microsoft Excel”。

现在,每次你在该工作表上进行任何更改时,都会在被编辑的单元格旁边自动添加一个包含用户名和当前时间的隐藏批注。

请注意,这个VBA宏不会影响已有批注或公式单元格,只会对非公式单元格的更改进行记录。如果你希望对所有单元格都应用这个功能,可以将 If cell.HasFormula = False 这一行删除或修改条件。