遍历Excel双工作表的VBA宏运行时导致程序冻结求助
VBA宏处理大行数工作表时冻结的问题
我最近写了个简单的VBA宏,用来遍历Excel里的两个工作表——这两个表的行数始终保持一致。目前每个工作表大概有155,000行,预计最多也不会超过200,000行。
关于数据类型的问题我也提前考虑过:代码里各类变量x的最大值是3000,我算了下,200,000×3000=600,000,000,觉得Variant类型完全能处理这个数值,应该不是数据溢出的问题。
但实际运行宏的时候,Excel直接出现了冻结的情况。我本来以为这个量级的行数在Excel的处理范围内,现在看来可能我的判断有误。不过当我减少行数n的时候,宏就能正常运行了,这说明问题大概率出在大行数场景下的处理效率上。
内容的提问来源于stack exchange,提问作者haas
相关产品推荐
相关产品推荐

