首页 > 解决方案 > 使用 Sumproduct 计算列中的第 n 个数字

问题描述

我有一个适用于 Excel 的公式,我正在尝试将 J 的出现次数计为第二位

=SUMPRODUCT(--(MID(J2:J2000,2,1)="J"))

问题是我似乎无法让它在 VBA 中工作......

Dim rng As Range
Set rng = temps.Range("J2:J2000")
n = Evaluate(WorksheetFunction.SumProduct(--(Mid(rng.Address, 2, 1) = "J")))

有任何想法吗?

标签: excelvbaexcel-formula

解决方案


我忘了我需要传递一个字符串来评估。以下工作:

n = temps.Evaluate("SumProduct(--(Mid(" & rng.Address & ", 2, 1) = " & Chr(34) & "J" & Chr(34) & "))")


推荐阅读