WinActorの使い方⑤-4条件式を無限ループにした繰り返し処理

WinActorの使い方⑤-4条件式を無限ループにした繰り返し処理

今回は条件式を無限ループにして
ある一定の条件を満たしたらループを抜けるという処理です。
繰り返し回数が定まらない時に有効です。

繰り返しの処理内容は前回同様で、
下記のようなExcelファイルから駅名を順番に取得していきます。
ただしExcelファイルのデータ数は毎回変わることが前提です。
データ数が変わっても問題なく動作するシナリオを目指します。



A列の東京から札幌までの取得します。
それでは以下の順番で解説します。

  1. 繰り返しを無限ループ設定にする

  2. Excel操作(値の取得2)を用いて値を取得する

  3. 取得したデータが空であったなら繰り返し終了

  4. 空でない場合、値を表示

  5. 対象Excelファイルの行をカウントアップする


下記が完成イメージです。


1.繰り返しを無限ループ設定にする


繰り返しをダブルクリックしてプロパティを開きます。
条件式設定をクリックします。
値⇒ 等しい 値⇒ と設定します。
値が何もない何もない等しい場合繰り返すという意味です。
 未来永劫変わらない事実です。
 つまり無限ループという意味になります。
 値⇒1  等しい 値⇒1 とかでもかまいません。
 未来永劫変わらない事実であればOKです。


2.Excel操作(値の取得2)を用いて値を取得する


Excel操作(値の取得2)をダブルクリックしてプロパティを開きます。

  • ファイル名 操作対象となるExcelファイルの絶対パスを記入します。

  • シート名 取得する値があるシート名を記載します。
    ※シートが1つしかない場合は省略可能です。

  • セル(行) 変数:を設定します。
    ※初期値は後程設定します。

  • セル(列) 取得したい値はA列ですのでAと記載します。

  • 格納先変数 取得した値が格納される変数名です。



変数:の初期値を設定します。
取得したい値は東京からです。
表示タブの変数一覧を開きます。
東京は2行目ですので初期値には2を設定します。



3.取得した値が空であったなら繰り返し終了


分岐をダブルクリックしてプロパティを開きます。
条件式を下記のように設定します。
値が格納される変数:出発駅名値⇒ と等しい
つまり値が空(何もない)かどうかを判別しています。


値が空つまり出発駅名が何もないと等しいか?
空であればTrueとなります。
Trueであれば繰り返し終了
※ノード→フロー→繰り返し終了を用います。
 値が空ということは最終行に到達していることを意味していますがデータに欠
 損がある場合もありますので決めつけてしまうのはいけません。



4.空でない場合、値を表示


条件式は出発駅名が空と等しいか?
ですので空でない、つまりデータがあるというのはつまり等しくない、Falseであるという事です。
ノード→ユーザ→待機ボックスをFalse内にセットします。
プロパティを開いて取得したデータが格納される変数:出発駅名
を設定します。
※取得データを確認するためです。
 深い意味はありません。



5.対象Excelファイルの行をカウントアップする


変数:には初期値に2が入っています。
セルA2の値を取得します。
次の繰り返しではA3の値を取得したいわけです。
変数:を3にするために
ノード→変数→カウントアップを用います。

ダブルクリックしてプロパティを開きます。

  • 計算結果 先ほど初期値を2に設定した変数:を設定します。

  • 加算値 1を入力します。
    つまりひとつの繰り返しが終わるたびに1をプラスするという意味です。
    2回目の繰り返しでは初期値2プラス1で変数:は3になります。



以上で設定完了です。
お疲れ様でした。
東京、米原、名古屋、金沢、札幌と
順番に表示されれば成功です。

参考書籍になります。
バージョン7に対応しており良本です。



4ヵ月無料!音楽聞き放題!Amazon Music Unlimited