BizRobo! Excelを行番号の降順に読み出して、値がある最初の行を見つける方法

BizRobo!

Excelを行番号の降順に読み出すときの設定を紹介します。
※このページの内容はBizRobo! Design Studio 10.4.0.1で確認しています。

「Excel内ループ(Loop Raws)」アクションでループバック機能を活用しよう!

【ケーススタディ】

Excelに日々のデータを記録する運用を行っている管理表から、直近で記録したデータを取得するケースを題材にします。管理表は、あらかじめ日付が入力してあって、データのみ日々記録していく運用とします。

行番号の昇順にセル値をチェックしていく処理の場合は、必ず最終行までループする必要があります。(土曜日・日曜日がデータなしになるので、データなしになった行の1つ前の行が直近のデータという判定はできません。)

これに対して、最終行から行番号の降順にセル値をチェックしていく処理では、データあり(データなしでない)行を見つけたところでループを終了することが可能なので、昇順に処理するよりも少しスマートな感じですね。

では、Excelの読み出しを行番号の降順に行うには、どうしたらいいでしょうか。

 

【設定方法】

1.「Excel内ループ(Loop Raws)」アクションでループバック機能を利用します。

ここでは簡単にするために、最終行が32行目の例を示しています。
行番号の昇順に読み出す場合と設定で違うのは、[ループバック]にチェックを入れるところだけです。こうするだけで、ループのイテレーション=1が最終行になって、Excelを行番号の降順に読み出すことができます。

 

2.「値判定(Test Value)」アクションで抽出したセルの値がデータなしでないときループを終了します。

(1)条件入力方法を[エクスプレッション]に変更します。

(2)[条件]を「値がデータなし」に設定します。

※【変数.抽出データ】・・・抽出した値を格納する変数
※【==】・・・等しい
※【””】・・・データなし

(3)「値判定(Test Value)」アクションのエラー処理(この例では、「データあり」の場合)として「ループ終了」を選択します。