诺曼的计算机具有快速处理器和32 GB RAM。出于统计目的,他经常需要使用百万行工作表。他仍在使用Excel 2007,并且在与这些巨大的工作簿一起运行了一段时间后,效果并不理想。 (实际上,它经常崩溃。)其他时候,启动后,它可以正常运行。诺曼想知道在处理如此大的数据集时如何做才能获得更可靠的操作。他想知道Excel 365是否可以更好地工作,还是可能需要更多的RAM。

让我们首先解决硬件问题。您的系统可能足以在Excel中使用大型数据集。但是,如果您打算更新硬件,那么获取更多的RAM总是一个好主意。这使Excel(和其他程序)可以在内存中执行更多的数据操作,而无需在内存和硬盘驱动器上的磁盘缓存之间交换数据。底线:不要仅出于这个原因升级系统,但是如果出于其他原因要升级,则要获得具有大量RAM的系统。

现在,转到Excel。您正在使用的Excel版本(Excel 2007)每个实例的最大内存分配为2 GB,并且似乎无法完全释放以前打开的工作簿使用的所有内存。

这可能是您“一开始就可以工作,但后来没有工作”的原因,解决此问题的唯一方法是定期关闭并重新启动Excel。

此外,Excel 2007仅提供32位版本。如果您更新到更高版本的Excel,则可以安装该程序的64位版本。这很重要,因为它允许您寻址更多的内存,这意味着更容易处理较大的数据集。

升级Excel版本后,您将需要按照以下步骤操作,以确保Excel充分利用CPU的能力:

。显示“ Excel选项”对话框。 (在Excel 2010和更高版本中,显示功能区的“文件”选项卡,然后单击“选项”。)

。在对话框的左侧,单击“高级”。

。向下滚动,直到看到选项的“公式”部分。 (请参见图1。)

。单击“启用多线程计算”选项旁边的复选框。

。确保选中“在此计算机上使用所有处理器”旁边的单选按钮。 (只有在完成步骤4之后,才能访问此选项。)

。单击确定按钮。

执行这些步骤之后,如果工作表包含很多公式,您的数据仍然可能会遇到问题。有意义的是,您拥有的公式越多(尤其是那些公式涉及必须不断重新计算的易失函数),您在Excel上放置的“负载”就越高。您可以采取任何减少公式(和易失性函数)数量的方法,使Excel响应更快。

现在,让我们看看使用Excel本身的可取性。潜在的问题是,您是否真的首先需要在Excel中拥有如此大的工作表。根据所使用的数据的性质,可能会发现最好将数据加载到数据库中(例如Microsoft Office的许多版本附带的Access),然后使用数据库程序来处理数据总结。此时,您可以将记录的较小子集复制到Excel中,以进行最终分析或格式化以用于演示。

一旦数据进入数据库,另一种方法是使用Excel的功能来访问数据。例如,由于(希望)已更新到更高版本的Excel,因此可以使用Power Query(在Excel 2016中称为Get&Transform)或Power Pivot建立与数据库的连接以处理数据,从而减少了整体处理在Excel上加载。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(4809)适用于Microsoft Excel 2007、2010、2013和2016。