次の式を使用してパーセンテージを計算しています。
=Fields!Days.Value/Sum(Fields!Days.Value, "Date_month_name")
Days.Valueは0として表示されますが、いくつかの結果では、パーセンテージ列で0%を読み取る代わりに、実際にはNaN(数値ではありません)を読み取っています。
誰かが私が必要とする正確な式forumlaを知っていて、「NaNが表示されている場所では、代わりに「0」を入力してください」と言うために現在の式のどこに貼り付ける必要がありますか?
(画像参照)
どうですか
=IIF(Fields!Days.Value > 0,Fields!Days.Value/Sum(Fields!Days.Value, "Date_month_name"),0)
私は上記の答えに運がなかった。これが私のために働いたものです:
=IIF(Single.IsNAN(Fields!Days.Value/Sum(Fields!Days.Value, "Date_month_name")), 0, Fields!Days.Value/Sum(Fields!Days.Value, "Date_month_name"))
私はこれを同様のケースに使用しました、
=REPLACE(Fields!Days.Value/Sum(Fields!Days.Value, "Date_month_name"),"NaN","0")
別のオプションがあります。問題を解決し、Infinite
応答を取り除く必要があります。
=val(replace(Fields!Days.Value/Sum(Fields!Days.Value, "Date_month_name"),"NaN","0"))
これは最もシンプルで最高だと思います、
=Switch(
Fields!Days.Value/Sum(Fields!Days.Value, "Date_month_name") = "NaN",Nothing,
Fields!Days.Value/Sum(Fields!Days.Value, "Date_month_name") = "Infinity",Nothing,
Fields!Days.Value/Sum(Fields!Days.Value, "Date_month_name") = "-Infinity",Nothing
)
何もない代わりに0を付けることもできます。
試してみてください
=IIf(Fields!Days.Value Is Nothing Or Sum(Fields!Days.Value, "Date_month_name") Is Nothing, 0, Fields!Days.Value / Sum(Fields!Days.Value, "Date_month_name"))
私はこれと同様の問題を抱えていて、次のことが最も簡単であることがわかりました。
=Iif(
Fields!Days.Value.Value <> 0 AND Sum(Fields!Days.Value, "Date_month_name") <> 0
, Fields!Days.Value.Value/Sum(Fields!Days.Value, "Date_month_name")
, 0
)
おそらく最善の解決策ではありませんが、機能します。