在Excel VBA中,易失性Offset函数非常慢。 什么是替代scheme?

我在Excelmacros中遇到性能问题。 一个特定的代码运行速度非常慢。 我认为原因是Offsetfunction。 我在网上发现,这是一个易失性函数,重新计算了很多。
奇怪的是我用它作为VBA函数,所以我不知道它是如何影响性能的,因为它不需要重新计算。

这是我如何使用偏移function:

 For i=0 To 10 For P=0 To 3 For T=0 To 3 Range("C9").Offset(6 * i + T, P).Value = effect(i,P,T) Next Next Next 

有没有更快(非易失性)的select?

你有没有尝试过Cells(row,column).Value = ...

显然你需要调整rowcolumn来考虑你的C9的起始位置(9,3)

你也确定函数effect()不是瓶颈吗?

更新:

也有你试过

 Application.Calculation = xlCalculationManual ....Your Code.... Application.Calculation = xlCalculationAutomatic