使用具有动态标准的countif功能

时间:2014-05-01 07:46:35

标签: vba dynamic countif

亲爱的Madams先生,先生,

在我的代码中,我使用了CountIf语句。

Cells(5, 3).Value = Application.WorksheetFunction.CountIf(CR, ">" & yel)

其中:

Dim yel As Double
yel = Cells(2, 5).Value

Dim CR As Range
Set CR = Range("D9:Z26")

奇怪的是:如果我使用动态标准(& yel),代码会给我一个零结果。当我使用固定标准("> 0")时,代码会产生正确的数字。

谁能告诉我我做错了什么?

提前致以最诚挚的问候和谢意,

的Wouter

1 个答案:

答案 0 :(得分:0)

我冒昧地打赌这个猜测:
您没有使用英语Excel。您的Excel版本使用,作为十进制标记。 将yel转换为字符串会使其保留为,,但内部引擎只能理解英语.。 试试这是否有效:

Dim strYel As String
strYel = Replace(CStr(yel), ",", ".")
Cells(5, 3).Value = Application.WorksheetFunction.CountIf(CR, ">" & strYel)