您好我有一个excel工作簿...我想在工作表的第2页的单元格A2中记下时间戳,以便在工作簿的sheet2的任何行或列中进行最新修改。
所以我的问题有两个: 1.想要追踪最新的修改时间。 2.想要将sheet1的单元格A2作为用户保护,以便没有人可以篡改跟踪的时间戳。 这是我工作的代码......它不正确,因为它没有做任何事情..如果它会做bben做任何事情然后肯定没有任何问题让我分享它,但因为它没有做任何事情所以它有点无用。
Private Sub worksheet_change(ByVal Target As Range)
Dim Row, Col
For Row = 2 To Sheet2.UsedRange.Rows.Count
For Col = 1 To Sheet2.UsedRange.Columns.Count
If Target.Cells(Row, Col) Then
Application.EnableEvents = False
Sheet1.Cells("A2") = now()
Application.EnableEvents = True
End If
Next Col
Next Row
End Sub
答案 0 :(得分:0)
让你朝着正确的方向前进:
对于问题的第二部分,请保护表1.在代码中,即:
ThisWorkbook.Worksheets("Sheet1").Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
在您写入单元格A2之前,首先取消保护它:
ThisWorkbook.Worksheets("Sheet1").Unprotect
如果要添加密码,请在帮助中查找Protect和Unprotect方法。
(请记住,即使使用密码,表单保护也相当薄弱。对于临时工作来说,没关系,但如果用户决定这样做,可能会被用户破解。更好的方法可能是编写值到一个具有xlVeryHidden可见属性的工作表,以便大多数用户甚至不知道它(如果你对VBA项目应用保护)。再次,不是不可破解,但比在可见工作表中更好。)