0

我正在为预期的不足评估编写一个 excel vba 代码。

我的 sumif 和 countif 函数返回值 0 如果我输入标准 '"<" & Var'(风险值 - 数组的百分位数为 2.5%),如果我反转该标准 (">") 这些函数 sum/count范围内的所有值。

我找不到错误,有人可以帮忙吗?这是代码的一部分:

Dim RiskHorizon As Integer
RiskHorizon = InputBox("Set the Risk Horizon!", "Risk Horizon", 10)
Dim SigLev As Double
SigLev = InputBox("Set the Significance Level!", "Significance Level", 0.025)
Dim CountDates As Integer
CountDates = Application.CountIf(Sheets("ExpSh").Columns("A"), "<>" & "") - 1
Dim ReturnRange As Range
Set ReturnRange = Sheets("ExpSh").Range("C2:C" & CountDates - RiskHorizon + 1)
Dim Var As Double
Dim ES As Double
Dim Sums As Double
Dim Counts As Double
Var = Application.WorksheetFunction.Percentile(ReturnRange, SigLev)
Sums = Application.WorksheetFunction.SumIf(ReturnRange, "<" & Var)
Counts = Application.WorksheetFunction.CountIf(ReturnRange, "<" & Var)
ES = Sums / Counts
4

1 回答 1

0

也许:

Sums = Application.WorksheetFunction.SumIf(ReturnRange, ""<"" & Var)
Counts = Application.WorksheetFunction.CountIf(ReturnRange, ""<"" & Var)
于 2015-03-15T11:05:30.043 回答