ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > Excel VBA > 多行数据变化如何触发Worksheet_Change事件?

多行数据变化如何触发Worksheet_Change事件?

作者:绿色风 分类: 时间:2022-08-18 浏览:104
楼主
茄子
问:用VBA写的代码有个局限性,如A1:A10单元格要全部选中一起删除数据时,B1:B10就不会生成当前日期,只能一个单元格一个单元格删除才会在B列生成当前日期。因为我在删除数据时经常要一次删除好几个单元格内的数据。请问如何修正

以下代码修正了无法同时删除多行数据的问题
  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2.     Dim Rng As Range
  3.     Dim ck As Boolean
  4.     If Target.Columns.Count > 1 Then Exit Sub
  5.     If Target.Column > 15 And Target.Column < 32 And Target.Column Mod 2 = 0 Then
  6.         For Each Rng In Target
  7.             If Rng <> "" Then Exit For
  8.             ck = True
  9.         Next Rng
  10.         If ck Then
  11.             Target.Offset(, 1) = Format(Date, "yyyy-mm-dd")
  12.         Else
  13.             Target.Offset(, 1).ClearContents
  14.         End If
  15.     End If
  16. End Sub

化锡计划表.rar
2楼
biaotiger1
增强版的Worksheet_Change。
针对多行数据变化代码,学习下。

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap