文字列数式評価(5)~各項の和
残るは各項を足し合わせる処理だが、
乗除算とほぼ同じ処理になる。
' 各項の和を計算
Private Function XEVal_PM(ByVal s)
On Error GoTo Err:
Set XEVal_PM = New Triple
Dim i As Long ' 繰り返し変数
' "+" で分解
s = Split(s, "+")
XEVal_PM = CDec(0)
For i = 0 To UBound(s)
If Len(s(i)) > 0 Then
' 項の中(の乗除算)を計算する
s(i) = XEval_MD(s(i))
Else
s(i) = 0
End If
XEVal_PM = XEVal_PM + s(i)
Next
Exit Function
Err:
Err.Raise 9002, , s(i) & "を数値として処理できませんでした"
End Function
ゼロ割り回避がない分すっきりしている。
コメント
コメントを投稿