Excel数据表刷新速度很慢

时间:2013-07-16 14:10:54

标签: excel-formula

我有一个Excel数据表链接到Oracle数据库的查询。此数据表包含:  (1)将附加的计算列(一些涉及数组公式和MATCH)添加到数据表中(基于查询的值),以及  (2)许多依赖公式遍布其他标签

虽然如果将查询本身快速刷新,如果完全按原样添加到全新的Excel文件中,依赖公式似乎会减慢刷新EVEN WITH CALCULATIONS SET TO MANUAL。

我尝试了几件事: 1)将计算设置为手动 2)禁用屏幕更新 3)残疾人事件 4)从数据表中删除计算列(只是普通公式)

似乎没有任何帮助......任何想法?感谢。

1 个答案:

答案 0 :(得分:1)

您可能会对此链接感兴趣。

Excel Recalculation http://msdn.microsoft.com/en-us/library/office/bb687891(v=office.12).aspx

Thread Safe Functions http://msdn.microsoft.com/en-us/library/office/bb687899(v=office.12).aspx#xl2007xllsdk_threadsafe

有很多事件可以触发重新计算事件,也可以在VOLATILE函数中读取。 Volatile函数是一个函数,即使它的参数(如果它没有参数)都没有改变,它的值也不能假设从一个时刻到另一个时刻是相同的。

The following Excel functions are volatile.
NOW
TODAY
RAND
OFFSET
INDIRECT
INFO (depending on its arguments)
CELL (depending on its arguments)

重新计算数据表的处理方式略有不同。重新计算与常规工作簿重新计算异步处理,因此大型表可能需要比工作簿的其余部分更长时间重新计算。

尝试设置Automatic Except for Data Tables。也许甚至在设置为手动计算时,这意味着只要事件触发手动,它就会计算受影响的单元格。也许你的刷新会触发所有这些会多次计算的事件,因为当事件触发它时会有更多事件进入并再次触发。

您可以做的最简单的事情是尽量消除尽可能多的VOLATILEARRAY公式。个人exp告诉我RAND和ARRAY函数是最差的。