Int.Parseでエラーになる

UiPath初心者です。
データテーブルにフィルタを掛けようとしたのですが、
数値でのフィルタだったため機能せず、
該当列を 文字列からInt32 へ変換しようとしております。
以下の通り行いましたがエラーとなりました。
解決策を教えて頂きたくよろしくお願いいたします。

代入式
左辺:row(“塗装面積”)
右辺:Int32.Parse(row(“塗装面積”).ToString)
image

こんにちは

数字以外の文字が入っていませんか?例えば小数点などもエラーになります。

1 Like

ありがとうございます。
小数点入っております。

こんにちは

小数点入っております。

小数点以下をどうしたいかにもよりますが
いったんDouble型にParseすると良いように思えます

ありがとうございます。
元々はデータテーブルの列”塗装面積” で、数値が 0 もしくは、 0.000のものだけを抽出したく、
フィルタで抽出しようとしておりました。

カンマもNGでしたっけね。

やったことないのですが、NumberStyles.AllowThousandsを指定すると、カンマがあってもOKのようです。

1 Like

そうなのですね💦
今回は数値のみの列なのでカンマは入らないですが、参考になります。

あ!今やってみたら、ちょっと設定するのに工夫がいるようで、単純に記述しただけでは、エラーが解決できませんでした<m(__)m>

こんにちは

元々はデータテーブルの列”塗装面積” で、数値が 0 もしくは、 0.000のものだけを抽出したく、
フィルタで抽出しようとしておりました。

以下のような感じでできると思います。(細かいエラー処理は追加する必要がありますが)

newDt = dt.AsEnumerable.Where(Function(r) Double.Parse(r("塗装面積").ToString)=0).CopyToDataTable()
2 Likes

Int32.Parse(S, System.Globalization.NumberStyles.AllowThousands)

こうすれば、解決できました!

1 Like

式を作って下さり、ありがとうございます。
=0
こちらが、0の場合も 0.000の場合も含むようになるのでしょうか。

1 Like

こんにちは

数値化しているので、入力が0や0.000でも0です。

ありがとうございます。
フィルタを使わずこのようにするのですね。
お陰様で無事に、0及び 0.000の抽出が出来ました。
ありがとうございました。

1 Like

いつもありがとうございます。
今回は、Yoichi様の式を使わせて頂きます。
カンマも使えない使う場合は。という点、大変勉強になりました。

1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.