【UiPath】Lesson5 / エクセルシートを読み取る

RPA
スポンサーリンク

次はエクセルシート内き入力された文字列を読み取ります。
応用が利く部分ですのでマスターしてください。
今回のお題は次の通りです。

エクセル内に記載の内容を1行目から順にメッセージボックスに表示させてください。

事前にエクセルシートを作成します。例として以下のようなものを作り、任意のフォルダに保存しました。
B列に記入している名前をメッセージボックスに表示します。また、No.8の栗田さんの後は、次のデータがないことを表示してください。

「Excelアプリケーションスコープ」のアクティビティから始めます。
このアクティビティをダブルクリックします。
※「Excelアプリケーションスコープ」がアクティビティにない場合は、ダウンロードして追加してください

には先に保存した対象となるエクセルのフルパスを入力します。
は処理中にエクセルを開いてディスプレイ上で処理をみることができるか
は「Excelアプリケーションスコープ」内での処置ごとに、エクセルシートを保存するか
です。処理が大きくなると(特に)は外して処理速度をあげますが、今回はデフォルトのままでいきます。

「Excelアプリケーションスコープ」の中には実行という名前の「シーケンス」アクティビティがデフォルトで入っていますが、「シーケンス」では表現しにくい動作があるのでここでは「フローチャート」のアクティビティに変更します。

「フローチャート」アクティビティをダブルクリックして、アクティビティ内の動作を編集します。
まず、セルに入力された値を読み取ります。「セルを読み込み」のアクティビティを接続します。なお、「セルを読み込み」のアクティビティを接続する場合には注意が必要です。


「セルを読み込み」アクティビティに関する注意

アクティビティの検索窓で「セルを読み込み」を入力すると下のの二つのアクティビティが表示されます。
は[アプリの連携]-[Excel]内
は[システム]-[ファイル]-[ワークブック]内
にそれぞれあり、名前は同じですが中身が異なります。「Excelアプリケーションスコープ」内での処理にはを用いてください。


最初はB2のセルから読み取り、次にB3、B4、B5・・・・と行数を上げていきますので、あらかじめ行数を変数パネルで定義しておきます。

行数は整数ですので、変数をIneteger型であるInt32に設定します
さらに、最初はB2セルからなので規定値(初期値と理解してください)に2を入力します。
Integer型は文字列であるString型と異なり引用符(":ダブルクォーテーション)で囲む必要はありません。

「セルを読み込み」アクティビティのプロパティで
[入力]-[セル]に "B"&Row と入力します。
[出力]-[結果]に変数定義した変数の名称を入力します。

お題では、セルの値(ここでは変数Resultの結果)が空欄の場合には、空欄の旨を表記する必要があります。分岐を適用します。

フロー条件分岐を接続し、プロパティの[その他]-[条件]にResult=""と記入します。
つまり、
対象のセルが空欄であればTrue方向に
対象のセルが空欄でなければFalse方向に振り分けられます

「フロー条件分岐」のTrue側(セルのデータがない)に「メッセージボックス」アクティビティを接続し、に"これ以上のデータはありません"と入力します。

一方、セルのデータがある場にはセル内の記載を表示させないといけないので、False側にも「メッセージボックス」アクティビティを接続し、で変数Resultを表記するように設定します。

2行目の出力が終わったら次は3行目の出力です。
この段階で2である変数Rowを3に変更しないといけません。
「代入」アクティビティを接続し、の左辺に変数Row、右辺にRow+1を入力し、の接続を行います。これにより「代入」アクティビティ通過以降の変数Rowは、アクティビティ通過前を+1した値になります。

では、この実行結果を1巡目から示します。成功です。

RPAUiPathUiPath講座
スポンサーリンク
スポンサーリンク
シェアする
SATORINをフォローする
スポンサーリンク
みっどないとぱーぷる

コメント

タイトルとURLをコピーしました