| こんにちは、ベルティゴです。 毎回いきなりで申し訳無いのですが、質問に来ました。
Set 味方最高レベル 1 ForEach 味方 全て If Level(対象ユニット) > 味方最高レベル Then Set 味方最高レベル (Level(対象ユニット)) EndIf Next
UnSet 味方平均レベル UnSet 処理件数 ForEach 味方 全て If Level(対象ユニット) = (味方最高レベル - 10) Then Set 味方平均レベル (味方平均レベル + Level(対象ユニット)) Set 処理件数 (処理件数 + 1) EndIf Next Set 味方平均レベル (味方平均レベル / 処理件数)
Set 味方最高ランク 0 ForEach 味方 全て If Rank(対象ユニット) > 味方最高ランク Then Set 味方最高ランク (Rank(対象ユニット)) EndIf Next
UnSet 味方平均ランク UnSet 処理件数 ForEach 味方 全て If Rank(対象ユニット) = (味方最高ランク - 5) Then Set 味方平均ランク (味方平均ランク + Rank(対象ユニット)) Set 処理件数 (処理件数 + 1) EndIf Next Set 味方平均ランク (味方平均ランク / 処理件数)
上のソースの上半分は、 「味方の最高レベルを所得し、以下10までのレベルのパイロットの平均値を求める」もので、 下半分は、 「味方の最高ランクを所得し、以下5までのランクのユニットの平均値を求める」ものなのですが、 双方とも、平均値が「-1.#IND」が返されてしまいます。 VBの知識が無いので何のエラーかが解からず、対策を講じられずに困っている訳です・・・
どなたか解かる方、上のソースの何処がどのように間違っているのかをご指南頂ければ幸いです。
それでは。
|