1

たとえば、どの式がより高速かをどのように見つけることができますか?

=SUMPRODUCT((Data!D:D="RC Corp")*(Data!AD:AD="Expected Allowances / Provisions"))

=COUNTIFS(Data!D:D,"RC Corp",Data!AD:AD,"Expected Allowances / Provisions")

Vs 2 つのフィールドを新しい列に連結して行う

 Z1 = D1&AD1
=Countif(Data!Z:Z,"RC CorpExpected Allowances / Provisions")

対 VBA

Dim i as integer
Dim Total as integer
Total = 0 
i=0
While i < 1000 
    IF Range("D"&i).Value = "RC Corp" AND Range("AD"&i).Value = "Expected Allowances / Provisions" Then
Total = Total + 1
End If 
Wend
Range("$A$1").Value = Total
4

2 に答える 2

4

evocandyの答えから目覚め、私はこの基本的なコードを思いついた。

time1 = Timer
Range("A1").Calculate ' Or the cell containing the Formula I want. OR use Sheets("Sheet1").Calculate for the calculation including concated columns
time2 = Timer

CalculationTime = Time2-Time1

これを機能させるには、サンプルデータを新しい空のワークシートに分離し、Excelで自動更新を無効にして、他の計算の時間がかからないようにする必要がありました。

于 2013-03-06T17:18:01.877 に答える
2

VBAでは、を使用できますTimer

置く

time1 = Timer
'Your code
time2 = timer

totaltime = time2-time1
于 2013-03-06T16:00:47.343 に答える