有没有什么方法可以直接比较在 Excel 中实现相同目标的两个不同公式的计算效率?
假设我想知道哪个处理器更密集(或者没有区别),例如:
=countif(a1,b1)
对阵=a1=b1
或者
=vlookup(a1,B:C,2,0)
对阵=index(C:C,match(A1,B:B,0)
我该如何建立这个?除了将公式向下复制 20,000 行并在按下 f9 时设置秒表之外。
答案1
类似这样的事情应该可以工作:
Public Function speedtest()
t = Now()
For i = 1 To 200000
'c = Application.WorksheetFunction.CountIf(ActiveSheet.Range("A1"), ActiveSheet.Range("B1"))
c = (ActiveSheet.Range("A1") = ActiveSheet.Range("B1"))
Next i
t1 = Now()
dt = Format(t1 - t, "ss")
ms = MsgBox(dt & " seconds", vbOKOnly)
End Function
要测试的公式位于for
循环内。其中一个使用 注释'
,因此您可以注释并取消注释以测试其中一个或另一个