vba - 将目标搜索宏观计算限制为工作表
问题描述
在运行以下目标搜索宏时,我正在寻求将 excel 计算限制在工作表中的帮助:
Sub GoalSeekRange()
For j = 2 To 100000
Cells(j, "BF").GoalSeek Goal:=Cells(j, "AY").Value, ChangingCell:=Cells(j, "AF")
Next j
End Sub
我已经在手动计算,但是对于每次迭代目标运行,它都会计算整个工作簿,极大地减慢了计算过程(我知道这是真的,因为我已经对其进行了测试并最终通过创建一个工作簿来避免它仅限此特定工作表)。
我可以在代码中包含任何内容来限制当前工作表的计算吗?我宁愿不必在每次需要运行此宏时都创建另一个工作簿。
非常感谢,
安德烈
解决方案
将您的代码存放在里面:
Application.Calculation = xlCalculationManual
'Your code here
Application.Calculation = xlCalculationAutomatic
此外,您Cells
没有资格,这意味着这将默认为活动工作表。你应该用一张纸来限定你的单元格,而不是依靠ActiveSheet
关闭也不会受到伤害ScreenUpdating
。( Application.ScreenUpdating = True/False
)
推荐阅读
- android - Beta Track 应用程序未显示在已安装应用程序列表和更新列表中
- java - Spring Neo4j JPA 原生动态排序查询
- python - 最快的多元 KDE 方法
- javascript - Highcharts 网络图在标记上显示更多线
- python - 如何操作日期和价格在同一列表项中的列表中的数据?
- python - 如果响应框不存在,我怎样才能让这个循环脚本只运行?
- reactjs - 在 React 类组件中同时使用继承和组合是一种好的做法吗?
- google-bigquery - LogsRouter 导出到 BigQuery 会导致部分遍历 JSON RECORD
- java - 如何在java中获取第二个单词的第一个字符
- amazon-web-services - 使用 https 将文件复制到 S3 存储桶