【BizRobo!】Excelで基準のセルから左右に移動した列の値を取得する(名前付き範囲設定)
皆さんこんにちは。開発エンジニアのYです。
BizRoboを使用する実務に携わって、もうすぐ半年になりますが、
まだまだ知らないことも多く、日々試行錯誤しながらRPA対応を行っています。
今回はBizRobo(DS)の「名前付き範囲設定」ステップを使って、
Excelの基準セルから左右に移動した列の値を検索・取得する方法をご紹介したいと思います。
※以下内容はDesign Studio 10.4で作成しています
【処理内容】
下記のExcelスケジュール表を読み込み、
“2022/12/27”の行(=□部分) C列セル以下から2つ目の「●」記載セルを検索して
検索結果と同じ行の日付を取得する(=□部分)。
【ロボットフロー】
上記Excel操作を実現するために作成したフローの全体図です。
今回は選択範囲が見えるよう多めに「名前付き範囲設定」ステップを入れています。
各ステップの内容は、次の【設定方法】にてご説明します。
【設定方法】
■事前準備
・変数「検索日付」を作成し、初期値に任意の日付文字列(“2022/12/27”)を設定する
・抽出した日付を格納する変数「検索結果日付」を作成する
・Excelスケジュール表を読み取り専用で開いておく(ファイル読み込み→Excel形式表示)
■ステップの説明
①名前付き範囲設定(1)
→ A列全体を対象にして、「日付列」という名前を付けて設定します
②名前付き範囲設定(2)
→①で設定した名前付き範囲内で、変数「検索日付」の値と一致するセルを検索し
「日付セル」という名前を付けます。
・ファインダータブでは「名前付き範囲で検索」を選択します。
範囲:範囲名「日付列」を選択します
使用:「一致するセル」を選択し、セルパターンに変数「検索日付」を設定します
③名前付き範囲設定(3)
→②で設定した名前付き範囲を基準にして、
同じ行のC列から下を「検索範囲」という名前で設定します。
・ファインダータブでは「名前付き範囲で検索」を選択します。
範囲:範囲名「日付セル」を選択します
使用:「指定位置の列」を選択し、範囲名「日付セル」を基準に設定を行います
列:右に2列移動するので、オフセット値に「2」を入力します
高さ:範囲を最終行までにするため、「シート全体の端まで」を選択します
④名前付き範囲設定(4)
→③で設定した名前付き範囲内で、最初から2つ目の「●」を検索し
「検索結果」という名前を付けます。
・ファインダータブでは「名前付き範囲で検索」を選択します。
範囲:範囲名「検索範囲」を選択します
使用:「一致するセル」を選択し、セルパターンに値 ”●”を入力します
Match#を使用:[1], [最初から] と設定して、最初から2つ目を対象にします
⑤セル値抽出 (Extract 検索結果日付)
→④で設定した名前付き範囲を基準にして、
A列から抽出した日付を変数「検索結果日付」に格納します。
・ファインダータブでは「名前付き範囲で検索」を選択します。
範囲:範囲名「検索結果」を選択します
使用:「指定位置のセル」を選択し、範囲名「検索結果」を基準に設定を行います
列:今回は左に2列移動するので、オフセット値に「-2」を入力します
行:行の移動は不要のため、オフセット値は「0」とします
⑥ログ出力
→実行結果(=変数「検索結果日付」)を確認するためのメッセージを設定します。
【ロボット実行結果】
下記ログ画面の通り
検索日付の記載セルを基準に、検索結果日付を正しく取得することができました。
いかがだったでしょうか?
今回はBizRoboの「名前付き範囲設定」ステップを使って
Excelの基準セルから左右に移動した列の値を検索・取得する方法をご紹介しました。
ファインダーの設定については、
今どの部分が選択されているのかを画面で確認しながら作成することができるので
ぜひ色々試してみてください。
最後までお読みいただき、ありがとうございました。