下面的代碼計算出我的數據的百分比。所有的工作都很好,除了100%應該是紅色的(#B20000),但實際上是綠色的(#32CD32)。我添加了一個特別指100%的選項,但即使這樣也沒有效果。有任何想法嗎?由於經典ASP FormatPercent忽略100%?
R = FormatPercent(objRsStat("active_beds")/objRsStat("total_beds"), 2)
'R = objRsStat("percent_remaining")
If R =< "60%" Then
CL = "#32CD32"
ElseIf R => "61%" And R =< "79%" Then
CL = "#FF8000"
ElseIf R => "80%" Then
CL = "#B20000"
ELSEIF R = "100%" Then
CL = "#B20000"
END IF
更新的代碼(有誤差):
If R <= 0.6 Then
CL = "#32CD32"
ELSEIF R => 0.61 AND R <= 0.79 THEN
CL = "#FF8000"
ELSEIF R => 0.80 THEN
CL = "#B20000"
END IF
你不能比較的字符串值,並期望它表現得像數值。測試原始百分比*('R =>「61%」並不意味着你的想法)*'objRsStat(「active_beds」)/ objRsStat(「total_beds」)'。 – Lankymart
它目前的工作原理 - 當從字符串更改爲數字它引發了一個很好的錯誤。這只是它掙扎的100%的數字。 99%是好的,所以我猜它在某處變得困惑,並沒有把100%視爲100% - 就像100%實際上被認爲是0%類型場景 –
不要做出假設,請參閱@dai [answer below](http: //stackoverflow.com/a/39960810/692942)。 – Lankymart