小数点の整数化 (change from with-comma to without-comma)

academyのLv.3のレッスン1に関する内容です。

小数点を含んだ数値を、整数として認識し入力する…という作業をしたいです。
PDFには、
「入力データが有効か、また各値が数値か否かのチェックを行います。 」
「Double.TryParse メソッドを使用し、結果を Double 型の変数として保存します。」
とありますが、使用法がイマイチ分からないです…。
大前提として、上記メソッドを使用して、整数化する、という認識は合っているのでしょうか?

1:全ての数値に小数点があるわけではない
2:整数のものもある
3:エクセル上の数値である
4:orchestratorのキューに一度格納する作業を含めたい
5:デモアプリに登録していく
6:その内、1000以上の価格(単位は円?)は登録対象から除外

と考えています。
一度キューに格納したものを、加工(整数化)出来るのでしょうか?
それとも、整数化した数値(文字列)を別媒体(エクセル等)に保存し、それをキューに格納…の方が良いのでしょうか?こちらのほうが、確実そうですが、二度手間っぽい気がしてるのですが…。

Hello,
This is about academy Lv3(Advanced course), Lesson-1.
I want to change text with comma to without comma
For example…
509.2 change to 509

They say “You need use method of Double.TryParse.”
But I don’t understand how to use this method.
I think they mean “To use this method, and exchange to without-comma.”
Is it right?

1:I don’t have every number with comma.
2:Some have no comma.
3:I have data from the excel file.
4:First, I wat to store to queue of orchestrator.
5:Then, I want to resist to demo-application the data.
6:But over 1,0000, I don not want to resist.

…I want to do like this…
Can I exchange variable,already srored?=A
Or,should I exchange data to other file(for example new excel file) and after finish it,store to queue?=B
I think Pattern-B is very bored but it’s very certain way.

I put excel file for database.
And also I put PDF file for guideline.
Please help me…

Transactions.xlsx (10.6 KB)
UiDemo自動化の手引き.pdf (1.4 MB)

こんにちは

このDouble.TryParseは与えられた文字列が数値(double型)として変換できるかどうかの判定と、可能な場合は対象文字列の数値化(double型への変換)を同時に行います。
小数を整数化するにはMath.Floorメソッド(切捨て)やMath.Ceilingメソッド(切り上げ)、Math.Roundメソッド(四捨五入)などを使用します。

なおUiPathでDouble.TryParseメソッドを用いて正しく値を取得するためには「メソッドを呼び出し」アクティビティを使う必要があるようです。

Yoichi様、
回答ありがとうございます。

ということは、添付画像のように、代入(エクセルの項目の変数作成)と条件分岐の前に、1工程増える、ということでしょうか?
flowchart1

「メソッドを呼び出し」アクティビティを作り、メソッドを入力したところ、
以下2点のエラーが出てしまいました。

1:「TargetTypeとTargetObjectをInvokeMethod “double型へ変換可否とその変換” に対して同時に使用することができません」
2:「Option Strict Onで"String"から"Double"への暗黙の型変換はできません」

また、条件分岐では、double型かどうか、で判定する式にしたほうが良いのでしょうか?

よろしくお願いいたします。

こんにちは

この部分が何をしているかが読み取れませんが..

「メソッドを呼び出し」アクティビティを作り、メソッドを入力したところ、
以下2点のエラーが出てしまいました。

に関してはメソッドを呼び出しアクティビティの使い方が誤っているかと思います。

大まかには以下になります。
TargetType : System.Double
TargetObject : (何も指定しない)
MethodName : TryParse

プロパティ欄
・パラメーター
1行目 方向:入力、型:String 値:今回変換対象となる文字列変数
2行目 方向:入力/出力 型:double 値:double型の変数(これに値が入ります。)
・結果 : Boolean型の変数(これに変換が成功したかの結果(true/false)が入ります。)

後続の条件分岐で、上記のBoolean型変数で変換の成否を判断する形になると思います。

1 Like

Yoichi様
回答ありがとうございます。

アクティビティの使い方の説明、ありがとうございます。
このやり方で進めてみたいと思います。

1 Like

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