鱼C论坛

 找回密码
 立即注册
查看: 55|回复: 1

VBA卡死

[复制链接]
发表于 2024-12-30 11:03:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
excel的单元格数值变化执行相关sub,但是删除行不执行sub,这个怎么实现?现在删除行就卡死
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2024-12-30 11:14:32 | 显示全部楼层
要在Excel中实现单元格数值变化时执行相关的Sub,但在删除行时不执行,可以使用Worksheet的事件处理程序。以下是一个简单的实现思路:

1. 使用`Worksheet_Change`事件来检测单元格的变化。
2. 在事件中判断变化是否是由于行删除引起的。

以下是一个示例代码,展示如何实现这一点:
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo ErrorHandler
    Application.EnableEvents = False

    ' 检查是否是单元格数值变化
    If Not Intersect(Target, Me.Range("A1:Z100")) Is Nothing Then
        ' 执行相关的Sub
        Call YourSub
    End If

ErrorHandler:
    Application.EnableEvents = True
End Sub

Private Sub Worksheet_BeforeDelete(ByVal Target As Range)
    ' 在这里可以处理删除行的逻辑
End Sub

Sub YourSub()
    ' 你的Sub代码
End Sub

在这个例子中,`Worksheet_Change`事件用于检测单元格的变化,而`Worksheet_BeforeDelete`事件可以用于处理删除行的逻辑。确保在处理事件时禁用事件以防止递归调用导致卡死。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-23 07:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表