我的Excel应用程序创建指向其他Excel文件的链接.创建一个单元格的链接大约需要1秒钟,但我有几百个单元格要链接,所以它很慢. 无论源文件是打开还是关闭,速度都没有区别.但是,我注意到
无论源文件是打开还是关闭,速度都没有区别.但是,我注意到,手动创建链接(例如,通过手动将包含链接的公式复制并粘贴到其他单元格中)在打开源文件时要快得多.
在我的程序中,我已配置
Application.Calculation是手动而不是自动.
我尝试以两种方式完成链接(请注意这不是真正的代码,但我希望它显示我的意思):
1.
使用,将公式链接从Range(“A1”)复制到外部源
一个范围内每个Cell的foreach循环:
Cell.FormulaR1C1 =范围(“A1”).FormulaR1C1
2.
将公式从Range(“A1”)复制到另一个范围而不使用foreach循环:
范围(“thisIsMyTargetRange”).FormulaR1C1 =范围(“A1”).FormulaR1C1
这两种方法都同样慢,正如我所说,我已经检查了上述两种方法,并打开和关闭了源文件.
有什么方法可以加快速度吗?有没有人对Excel 2003中的链接机制有足够的了解,提供有关如何提高链接性能的建议?
有公式是否相关?如果不使用.value而不是.formular1c1.此外,如果范围大小相同,则使用范围副本而不是循环.例如
range(a1:a500).value = range(a1:a500)
添加替代方法:
另外,另一种方法是使用数据导入功能创建一个表,该功能在文件打开时刷新,如果表单是你所使用的.然后,如果您想要该表的位,请使用导入表/表中的数据.这将在打开文件时保持更新或链接仅一个大的导入.