変数にデータを蓄積していく2つの方法

処理を実行するとその結果が変数に保存されるアクションがある。ループなどを使ってアクションを繰り返して変数にデータを格納していく場面を考える。アクションの結果を保存する変数がひとつの同じものなのであれば、その変数にはループで最後に実行した結果のみが残りそれ以前に格納したデータは消えてしまう。ループの繰り返し処理の結果を一つずつ変数に蓄積していくためには変数を適切に設定することが必要となる。次のような2つの方法がある。

1. リスト変数の行にデータを蓄積する

ごく一般的なリスト変数の使い方。とくにこだわりなければ次の2.よりも分かりやすいのでこちらでよい。アクションの行数が多くなる傾向はある。

2. テキスト変数にデータを蓄積する

テキスト変数自体の設定を工夫することでリストでなくテキスト変数にデータを追加していける。一つのアクションで区切り文字まで自由に設定できてしまう。アクションの行数が少なくなる傾向がありミニマルさが魅力。

0. データ蓄積する気がないループ処理の例

f:id:yujihb:20211101002536j:plain

変数NewVarにLoopIndexを3倍した値を加算してその結果を変数Kekkaに保存する。これを10回繰り返す。

f:id:yujihb:20211101002553j:plain

実行結果。ひとつの変数Kekkaをループで更新しつづけるだけであるため最後に実行した結果のみが残っている。

f:id:yujihb:20211101002621j:plain

1. リスト変数の行にデータを蓄積する

あらかじめアクション「新しいリストの作成」で空(カラ)のリスト変数を作成しておき、アクション「項目をリストに追加」で変数Kekkaの値を蓄積していく。

f:id:yujihb:20211101002603j:plain

f:id:yujihb:20211101002612j:plain

実行結果。ループ処理の繰り返し計算の結果がリスト変数Listの各行に追加された。データが蓄積できた。

f:id:yujihb:20211101002631j:plain

f:id:yujihb:20211101003454j:plain

2. テキスト変数にデータを蓄積する

リスト変数を使う代わりにテキスト変数のみで同様にデータを蓄積してくことができる。

f:id:yujihb:20211101003510j:plain

データを蓄積するためのテキスト変数KekkaTotalを設定する。以下のように変数KekkaTotal(自分自身)を先頭に含めることがポイントだ。これにより変数KekkaTotalに残っている値はそのままに新たに値を追加していくことができる。

f:id:yujihb:20211101003533j:plain

実行結果。変数KekkaTotalに設定したとおり「---」で区切られたかたちでデータが蓄積できた。なお値の最後に余分な区切り文字が入ってしまうので利用方法によっては注意が必要となる。

f:id:yujihb:20211101003517j:plain

f:id:yujihb:20211101003524j:plain

各データの前に「ooo」、後に「xxx」をつけてみたり、自由に好きな区切り文字を設定することができる。フローの後続の処理で使う形式に整えながらデータを蓄積しよう。

f:id:yujihb:20211101003542j:plain

f:id:yujihb:20211101003551j:plain