VBA记录区域内的修改信息

记录区域内修改信息

前天写了一篇关于excel画图的文章,其实实质就是记录单元格的修改并标记。

但是你会说了,我不想整个表的区域修改信息都被标记,只想指定某个区域内标记之。

这个不是没办法,分享个代码尝试之:

 
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)   
  2. Dim sourcerange As Range   
  3. ActiveWorkbook.Names.Add Name:="source", RefersToR1C1:="=sheet1!r1c1:sheet1!R10C4"  
  4. Set sourcerange = Range("source")   
  5. If Not (Intersect(Target, sourcerange) Is Nothing) Then   
  6. Target.Interior.ColorIndex = 7  
  7. MsgBox "在数据区域内有修改!"  
  8. End If   
  9. End Sub  

如果Intersect返回nothing表示这两个单元格区域没有共同的单元格。

用not则表示两处至少有一个共同单元格则返回true并执行6~7句代码,否则退出。

今天的代码只是在上次的代码基础上加了个区域限定,如果你有需要完全可以copy走!

明天要去红外线考试了,有可能不能更新文章了,期待我考试顺利,回来接着更新!嘿~

分享到: