今天教大家做一个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、里面需要记录的工作表名称为:操作日志,代码前后必须要保持一致。
|