performance - Excel 速度和大小问题

标签 performance excel optimization size

我正在一家大公司的共同基金部门实习,研究收入模型。该模型已经开发出来并且非常庞大。我需要在速度(打开、保存、关闭、计算)和效率(更好的公式可能是?)方面进行整体优化。

问题是:速度非常慢。它有超过 42 个工作表,目前大小为 23 MB。它链接到我的驱动器上的许多其他 Excel 文件,但不链接到网络硬盘驱动器中的驱动器。

它大量使用“vlookup”、“sumif”和“sum”。所有工作表都通过公式链接到所有其他工作表。

为了提供更多信息,Excel 文件基本上记录了共同基金(超过 50 种类型)及其子类别的数量。例如,我们获取基金业绩、基金收入、每个基金管理的 Assets 以及其他 20 多个此类属性的实际数据。我的 Excel 工作表从其他 Excel 工作表中获取数据,然后将所有内容一起报告,以便我们可以预测 future 4-5 年的收入和收入。

为了给出你的比例,工作簿中的“sumif”公式总数为 113000,是的,这是正确的..超过 100, 000!类似地,vlookups 是 53000...

我已经切换到手动计算模式,删除了所有宏(它们很少,只是用于在选项卡之间切换,并且还尝试保存为二进制文件(二进制使它快三倍,但我担心,如果我们要向其中添加内容,文件会变得更大,二进制文件是否会妨碍添加宏甚至更多的 vlookups...?)

主要问题在于打开和保存。只有一些 vlookup 正在查找其他 vlookup 收集的数据。简而言之,我的问题是:

1)二进制文件格式的效率有多高(已经在各种论坛上阅读过有关此内容的内容,但在向我的部门推荐之前仍需要百分百确定) 2)我们可以安全地将 vlookup 称为罪魁祸首,因为它们超过 50000 3)拆分文件,假设每个文件有10个选项卡,比一个有42个选项卡的Excel更高效吗?是否知道它会有所作为?假设我没有更改公式方面的任何其他内容,一旦我拆分它,我只需在此处引用新的 Excel 工作表。这也是劳动密集型的,因为这似乎也是一项艰巨的任务。因此,在冒险之前,我需要确定这是否是正确的思维过程。

非常感谢您的帮助。

阿舒

最佳答案

对于 VLOOKUP,尝试对数据进行排序,然后使用 VLOOKUP 的二分搜索选项(速度快几个数量级)。请参阅Exact match binary search lookups
如果您无法对数据进行排序,请考虑使用基于内存的查找 Memlookup

关于performance - Excel 速度和大小问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17170725/

相关文章:

java - 使用静态初始化 block 来提高性能

vba - Excel VBA - 在复制之前检查某个范围内的数据是否已存在

excel - 指定键盘快捷键来运行程序

sql - 使用子字符串与使用通配符的 SQL 比较的性能

c++ - 在循环中创建一个对象

针对 Pagespeed 优化的 Apache Vhost 指令

performance - Elasticsearch搜索索引类型限制

performance - 我想用 Watir 或 Selenium 计算页面加载时间

javascript - js : var declarations, 循环,效率,效用

excel - Excel VBA中的公共(public)静态变量