我们可以在不移动光标的情况下执行公式吗?将数据输入到输入单元格后,我们按Enter键或从该单元格移动,然后与该单元格相关的任何公式都会被执行。有没有什么办法可以在输入时自己看到excel输出的结果?请帮我找到这个选项。现场执行公式
现场执行公式
回答
我不相信代码在单元格的“编辑器”具有焦点和控制权时可以执行。例如,在编辑公式时,请尝试在Excel中执行其他操作。我相信单元必须在代码执行之前完成其值或公式的保存。
当单元格更新时,可以有一个公式“监听”,但这有点复杂。一旦它被更新,它可以强迫你回到原来的单元格。以下是如何编写一些代码来“监听”单元格值发生变化的代码。在以下示例中:
- 我将Cell
I1
的值记录到strValue
。 - 然后我运行一个循环,保持运行,只要单元格
I1
的值没有改变。 DoEvents
命令将控制权释放回处理器,这允许您在运行Excel时使用它。- 一旦单元格
I1
的值发生变化,While
语句将为false,循环将退出。 - 循环结束后,会弹出一个消息框,告诉您更改的值,然后再次选择原始单元格。
'
Sub testChange()
Dim strValue As String
strValue = Range("I1").Value
Do While strValue = Range("I1").Value
DoEvents
Loop
MsgBox "The value changed!"
Range("I1").Activate
End Sub
或许,如果你只是想每一个数值发生变化时控制返回到原来的电池,你可以使用线以上没有消息框,并返回到循环一旦你方法执行。请记住,如果你这样做,你可能需要找出另一种方式退出你的代码。
为什么你想让它在单元格内执行?你的任务的最终目的是什么?
据我所知,唯一可用的事件是Worksheet_Change(作为范围的ByVal目标),当更改完成时(即离开目标时)触发该事件。你会在你描述的场景中听到什么?我觉得你需要一个我认为不存在的事件,比如改变。 – Mathias 2009-11-26 04:51:16
@Mathias - 看我上面的例子。它使用'DoEvents'和一个循环来“监听”来查看单元格的值何时发生变化。 – 2009-11-26 05:04:32
在Excel 2003中测试您的宏,MsgBox仅在您按Enter完成编辑单元格后触发。值属性不会更新,直到 – barrowc 2009-11-27 04:30:57
按F9键进行重新计算而不移动输入单元格。这在Excel 2007中有效。我不确定早期版本。
- 1. VLOOKUP执行某个公式
- 2. 在某个范围内执行公式时出现问题
- 3. R中回归公式的执行
- 4. 如何用mysql执行COUNTIF公式
- 5. Apache poi edate公式未执行?
- 6. 在Android中执行数学公式
- 7. JS和Rails现场广告公告
- 8. 检索计算场的公式?
- 9. 现场音频格式
- 10. DAX公式从过滤的行获得场在同一个表
- 11. 执行公共字符串
- 12. 公共职能不执行
- 13. SQL公式行号
- 14. 多克尔 - 撰写执行不广场
- 15. 斯威夫特操场执行速度
- 16. 在Chrome中“当场”执行Javascript代码?
- 17. 处理httprequest执行超时场景
- 18. 钻石广场不当执行
- 19. 的SQL Server将如何执行场景
- 20. LINQ的执行与具有场沿场更新
- 21. 如何在SQLAlchemy中执行此递归公用表表达式?
- 22. 组合框执行基于用户选择的不同公式
- 23. 条件自引用公式(仅在单元格值==“”时执行)
- 24. 如何在SQL Server Reporting Services中执行CR类型公式?
- 25. 如何在Lotus Notes公式语言(@命令)中执行indexOf()?
- 26. 阻止添加到openpyxl工作簿中的公式执行
- 27. vba编码识别负数,然后执行公式
- 28. 我无法理解使用JavasScript执行以下数学公式:
- 29. 如何仅在单元格不是公式时执行替换?
- 30. 从文本中读取并执行公式
你能解释一下你为什么要这样做吗?我可以看到问题,但没有这样做的好处。不要批评,只是好奇。 – Mathias 2009-11-26 04:53:40