0

我创建了此代码来监视文件夹,以防发生创建和删除事件。但是,我创建的代码总是覆盖同一个单元格,而我想跟踪更改。因此,我希望在 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
4

1 回答 1

1

如下添加两个变量 x,y 可能有效

   Select Case objEventObject.Path_.Class
Dim i As Integer
x = Range("a" & Rows.Count).End(xlUp).Row + 1
y = Range("b" & Rows.Count).End(xlUp).Row + 1

       Case "__InstanceCreationEvent"
       MsgBox "A new file was just created: " & objEventObject.TargetInstance.PartComponent
       Workbooks("MonitorDirectory").Worksheets("Tabelle1").Range("A" & x) = objEventObject.TargetInstance.PartComponent
        Exit Do
       Case "__InstanceDeletionEvent"
        MsgBox "A file was just deleted: " & objEventObject.TargetInstance.PartComponent
        Workbooks("MonitorDirectory").Worksheets("Tabelle1").Range("B" & y).Offset(1, 0) = objEventObject.TargetInstance.PartComponent
        Exit Do
End Select
于 2018-01-29T14:59:18.693 回答