首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >您能检测到在worksheet_change()期间是否和excel查找和替换是活动的吗?

您能检测到在worksheet_change()期间是否和excel查找和替换是活动的吗?
EN

Stack Overflow用户
提问于 2010-03-11 16:40:11
回答 1查看 690关注 0票数 2

我刚刚崩溃了excel,使用亚马逊电子表格更新提要。

在进行查找和替换时,使用第一个替换后选择的2个单元格替换所有,worksheet_change()函数使用所选的整个电子表格完成。这意味着替换人员是在原地区以外进行的。不幸的是,复制的文本包括了查找文本,每次替换,重新选择整个excel区域,直到它耗尽空间,然后崩溃。

按下控制-中断显示vba对话框停止/继续/调试。由于amazon保护了工作表,所以调试变得灰暗。停止将停止一次运行,但随后将继续崩溃。“继续”将切换回当前的更改,并继续崩溃。

在执行excel vba时,是否有任何方法检测查找和替换操作是否正在进行?

问候约翰

EN

回答 1

Stack Overflow用户

发布于 2010-03-11 18:29:32

不幸的是,在这种情况下,无法知道是什么触发了Worksheet.Change事件。您可以知道的是,工作表的内容发生了一些更改,工作表中的哪些单元格也发生了更改。但是,您无法知道调用了什么代码来进行更改,或者即使是代码进行了更改,因为用户也可能引发Worksheet.Change事件。

我看到了你在上面描述的两个问题:

  1. 您说您已开始使用选定的两个单元格进行查找-替换操作。但是您描述的行为表明您只选择了一个单元格。如果选择了两个或多个单元格,则“查找-替换”操作仅发生在选定的范围内。但是,如果只选择了一个单元格,则对工作表中的所有单元格进行查找-替换。因此,我强烈怀疑,在启动“查找-替换”操作时,您只选择了一个单元格,而不是两个单元格。
  2. 说,“查找文本”和“替换文本重叠”这一事实听起来并不是一个好主意,但它不应该对您所描述的那种不终止的递归产生任何问题。处理worksheet_change事件的Worksheet.Change ()函数本身是否有可能直接或间接地调用另一个查找-替换操作?如果是这样的话,那么您很可能得到无限递归。

-迈克

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2426832

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档