如下图演示,只要修改任一个工作表中的数据,就会在“日志 ”表中记录修改时间、工作表名称、原值、修改后和操作的单元格地址信息。
是不是很逆天的效果,如果你想在自已的表格中增加日志功能,就跟兰色一起操作吧。
第一步:添加“日志”工作表,输入标题行。
第二步: 单击工作表右键菜单中的“查看代码”命令。
第三步:在打开的窗口中,双击工程窗口中的‘Thisworkbook“,然后把下面的代码粘贴到右侧的空白位置。
代码:
Dim XX
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next
If Sh.Name <> "日志" And Target.Rows.Count = 1 Then
With Sheets("日志")
If XX <> Target Then
ROW1 = Sheets("日志").[A65536].End(xlUp).Row + 1
.Cells(ROW1, 1) = Format(Now, "yyyy-mm-dd hh:mm:ss")
.Cells(ROW1, 2) = Sh.Name
.Cells(ROW1, 3) = XX
.Cells(ROW1, 4) = Target.Value
.Cells(ROW1, 5) = Target.Address
End If
End With
End If
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
XX = Target.Value
End Sub
第四步:关闭上面的代码窗口,回到工作表中后,文件 - 另存为 - 类型:Excel启用宏的工作簿。
设置完成!
(注:删除代码即可让日志失去记录作用)
现在你学会如何保护你的表格了吗?
閱讀更多 excel函數與vba實例 的文章