今天教大家做一个VBA技巧最强操作,那就是制作一个属于你的Excel表格监控器,将别人对你的表格的每一步修改操作全部记录下来。这样再也不用担心别人到底修改的是哪一步操作,我们也可以对数据进行恢复。
下面我们来看一下具体的效果展示。
如上图:我们有一个操作日志的表格和每日销售明细的表格。操作日志是记录每一次操作的记录,每日销售明细是每天需要登记的数据,当我们在每日销售明细中进行修改操作的时候,操作日志里面就会将每一次修改记录下来。是不是感觉很神奇呀,这就是VBA功能的强大之处。
下面我们来看一下制作的具体操作。
第一步:新建对应的工作表,我们需要每天操作的表格和需要记录的工作表(操作日志)。如下图:
第二步:按alt f11或右键点击工作表名称,进入代码编辑窗口,双击工程文件thisworkbook进入代码编辑窗口。如下图:
第三步:双击thisworkbook进入代码编辑窗口,输入以下VBA代码即可。如下图:
代码如下:
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
第四步:另存为启用宏的工作簿就可以正常使用了。注意点如下:
1、DIM定义的名称为XX,代码中的名称前后必须保持一致;
2、里面需要记录的工作表名称为:操作日志,代码前后必须要保持一致。
,