避免覆盖到单元格中

时间:2018-01-29 14:39:09

标签: excel vba range file-monitoring

我已创建此代码以在创建和删除事件的情况下监视文件夹。 但是,我创建的代码总是覆盖相同的单元格,而我想跟踪更改。因此,我希望所有创建事件都列在A列中,删除事件列在B列中。 有人可以帮帮我吗?

Select Case objEventObject.Path_.Class
       Case "__InstanceCreationEvent"
       MsgBox "A new file was just created: " & objEventObject.TargetInstance.PartComponent
       Workbooks("MonitorDirectory").Worksheets("Tabelle1").Range("A2") = objEventObject.TargetInstance.PartComponent
        Exit Do
       Case "__InstanceDeletionEvent"
        MsgBox "A file was just deleted: " & objEventObject.TargetInstance.PartComponent
        Workbooks("MonitorDirectory").Worksheets("Tabelle1").Range("B2").End(xlDown).Offset(1, 0) = objEventObject.TargetInstance.PartComponent
        Exit Do
End Select

1 个答案:

答案 0 :(得分:1)

添加两个变量x,y如下所示可能有效    选择Case objEventObject.Path_.Class Dim i As Integer x =范围(" a"& Rows.Count).End(xlUp).Row + 1 y =范围(" b"& Rows.Count).End(xlUp).Row + 1        案例" __ InstanceCreationEvent"        MsgBox"刚刚创建了一个新文件:" &安培; objEventObject.TargetInstance.PartComponent        工作簿(" MonitorDirectory")。工作表(" Tabelle1")。范​​围(" A"& x)= objEventObject.TargetInstance.PartComponent         退出做        案例" __ InstanceDeletionEvent"         MsgBox"一个文件刚被删除:" &安培; objEventObject.TargetInstance.PartComponent         工作簿(" MonitorDirectory")。工作表(" Tabelle1")。范​​围(" B"& y).Offset(1,0)= objEventObject.TargetInstance。 PartComponent         退出做 结束选择