2
嘗試根據兩個輸入的值返回L,M,H值。這是我有:VBA if else不返回正確的值
If (80 <= x <= 120 And y > 120) Or (x > 120 And y > 120) Or (x > 120 And 80 <= y <= 120) Then
CDI = "H"
ElseIf (x < 80 And y <= 120) Or (x < 120 And y < 80) Then
CDI = "L"
ElseIf (x < 80 And y > 120) Or (80 <= x <= 120 And 80 <= y <= 120) Or (x > 120 And y < 80) Then
CDI = "M"
End If
正在返回的值不是我所需要的。例如,(0,291)顯然是M時返回H.爲什麼?
DUH,非常感謝修復它。我是VBA的新手,但做出了可以像Python一樣行事的可憐假設。再次感謝! – jluk
@Robert,所以它將'variable condition variable'作爲'or'語句處理? – Elias
@Elias:我認爲它可能與操作順序有關,計算結果的方式被解釋爲布爾值,但我沒有真正檢查過。 –