a = Application.WorksheetFunction.Sum(IIf(([B2:B11] > 0), 1, 0))
大家看看上面这句话有什么问题吗
excel里面
=SUM(IF((B4:B6 > 0), 1, 0))
用ctr+shift+enter是可以运行的
怎么搬到VBA就不行了呢
------解决方案--------------------------------------------------------
=SUM(IF((B4:B6 > 0), 1, 0))是以数组输入方式输入的,vba里识别不出来这种输入方式
看你的公式的作用应该是求B4:B6中数据大于零的个数,可以用
Application.WorksheetFunction.CountIf([B4:B6], ">0")