【第107回】ロータス博士のWinActor塾~csvからの変数値設定Ⅱ

今日は前回の続きじゃぞ!
前回何をやったか覚えてるかの?

もちろんですよ!
えーと・・・確かCSVを使って・・・なんかこう・・・

・・・え?

いやわし何も言っとらんぞ。
忘れてたら前回の記事を確認しておくのじゃ。

よしみなさん!僕と一緒に復習しましょう!

こらこら巻き込むでない。
茶番はこのくらいにして始めよう。実は今回は超簡単なんじゃよ。
前回の記事はこちら

ループとcsvの組み合わせ
前回はcsvファイルのデータを変数に読み込んで利用しました。
今回は応用編です。複数行のcsvからデータを1行ずつ変数に読み込み、使用してみましょう。

ははーん、わかりましたよ博士。
前回使った「csvファイル→変数値」をループに入れて
行をずらして読み込んでいくんですね!

おぉ、なかなか良いアプローチじゃ!
つまりこういうことかのう?

そう、まさにこれですよ!
読み込む行数をループ回数にしてずらしていく!

うむ!これでも確かに正解じゃ!じゃがすまん・・・
ひっかけ問題みたいになってしまったが
今回教える方法は「csvファイル→変数値」は使わないんじゃ。

・・・

もう一つの簡単な方法を見ていこう。
ただし、柔軟性はロータス君の考えた方法のほうが良い。
なのでどちらかが正解ということはないことを覚えておくのじゃぞ。
繰り返しのシナリオ例
シナリオ全体像
シナリオフローの全体図は次のようになっています。
csvファイルの内容と変数一覧
今回使用するcsvファイルの中は次のようになっています。
WinActorにはcsvの見出し列に対応した以下の名前の変数を準備します。
csvのパスは読み取り時に必要になります。ノードに直接設定しても構いませんが、今回は変数として初期値に入力し管理しています。

博士!これ「csvファイル→変数値」どころか
何も使ってないのでは・・・?

そうなのじゃ。繰り返しノードにはもともと
csvを読み取ってループする機能があるのじゃよ!

じゃあタイトル詐欺じゃないですか・・・

それについては本当にすまん。
一応これもcsvからの変数値設定じゃから・・・

というか繰り返しにそんな機能が。灯台下暗しですね。
ちなみに、変数値設定というからにはちゃんと変数に値が入るんですよね?

もちろんじゃ!変数にデータが格納されてそのまま使えるぞ!
繰り返しノードの設定
繰り返しのプロパティを次のように設定します。
普段は「条件式」や「回数」を使うことが多いと思いますが
今回は外部のファイルをループに使用するので「データ数」を選択しましょう。
データファイル名にはcsvのパスが入った変数、もしくはパスを直接入力してください。
その他の項目は全てデフォルトのままで大丈夫です。
これでcsvの行数分をループして、かつループの頭で変数に値が入力されるようになりました。
csvファイルの中から、ループ回数に応じた行のデータを読み取ります。(見出し行は無視されます)

たったこれだけでそんなことができるんですね!

そうなんじゃよ。繰り返しは優秀なんじゃ。
今回はこの方法を伝えておきたくてのう。
一応、残りのフローの中身と実際にちゃんと動くか試して終わりにしよう。
多分岐ノードとメッセージ表示
実際に動作することを確かめるため、csvファイルのC列「実行パターン」によって分岐させてみます。
ループの中に多分岐ノードを入れ、条件を次のように設定しましょう。
csvファイルでは上から順にA, C, Bとなっています。
実行したときに、パターンA→パターンC→パターンBの順でループして終了すれば成功ですね。
それぞれの分岐の中の待機ボックスは、全て同じで「メッセージ」という変数を表示するようにしています。
実行結果
1ループ目
2ループ目
3ループ目
ここまで動いてループを抜けて終了しました。
もう一度csvと見比べてみると・・・
表示されたメッセージも、しっかりループ回数に合った行のもので更新されていることがわかります。

どうじゃ?これは特に一日に何度も行う業務と相性が良いぞ。
初期設定だけ毎回変えて実行を押している方は要チェックじゃな!

うーん、前回習ったノードを使わないのは許しがたいですが・・・
繰り返しの機能をそのまま使う発想が出なかった僕の負けです。
今回は素直に認めますよ。

いや別に勝ち負けとかではないんじゃが・・・
まあいいか。

でも毎回ちょっと変えて動かしてる人は多そうですね!
このやり方を知ったら楽になるかも?

少しでも楽になるとよいのう!
というわけで今回はここまでじゃ!
関連記事こちらの記事も合わせてどうぞ。
2025.05.23
【第106回】ロータス博士のWinActor塾~csvからの変数値設定Ⅰ
2024.11.05
【第105回】ロータス博士のWinActor塾~新しい画像マッチング画面
2024.09.27