将Excel数组值放入caching中

我有一个大的数据库(20列中700.000+行),我在Excel中导入并做不同的操作。

这种操作的一个例子是分类。 为此,我使用2列: 材料types类别,并通过以下方式将其输出到“ 最终类别 ”列中:

IF materialType = "SERV" or category = "SERVICE" then finalCategory = "SERVICE" 

什么是执行这个计算的最快方法?

目前我使用FOR循环,已经禁用了application.screenupdating。

我也想知道,有没有办法把这些列caching,然后运行它?

希望你能帮忙,

干杯!

假设'materialType'列是A,'category'列是B,'finalCategory'列是U.那么你可以试试这个:

 Dim strFormula As String strFormula = "=IF(OR(A1=""SERV"",B1=""SERVICE""),""SERV"","""")" Sheet1.Range("U1:U700000").Formula = strFormula 

这样可以避免循环遍历700,000行,并执行一个独立的操作,即使没有更新屏幕,也可能会非常缓慢。