我有一个工作表,其中前三列(A,B,C)中存储数据。这些值在宏中使用。
我想知道在将数据粘贴到这些列之后如何使此宏自动运行。我几乎可以确定我将使用Worksheet-Change模块,但是对于代码我一无所知。
提前致谢。
一个简单的实现:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1:C" & ThisWorkbook.Worksheets(1).UsedRange.Rows.Count)) Is Nothing Then
'Call your Macro to do stuff
End If
End Sub
相交检查“目标”是否在您要监视的范围内。因此,如果C列中的某些内容发生变化,则Intersect将返回Nothing,并且不会调用您的宏。请记住,Worksheet_Change事件会在发生任何更改时触发,甚至双击单元格也是如此。如果您在此工作表中所做的只是复制并粘贴数据,然后运行宏,这应该没问题,但是如果您要进一步处理数据,则可能必须考虑更复杂的解决方案。示例包括镜像您的工作表并在工作表更改事件之前/之后对其进行比较。您可以在此处阅读更多内容:通过编辑来检测单元格值是否实际上已更改
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句