0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

BizRobo!のセル値抽出ステップでエラーになる~数値を抽出コンバータ~

Last updated at Posted at 2023-11-26

就業先では、RPAツールのBizRobo!を使用しています。BizRobo!開発で悩み、BizRobo!ナレッジベースで日々検索しています。

Excelファイルから値を抽出することは、RPAではよくあるケースです。
BizRobo!では、「セル値抽出(Extract Cell)」ステップを用いて、Excelファイルから抽出します。
しかし、そのステップ内にある「数値を抽出」コンバータの使用方法を間違えるとエラーになってしまいます。
今回は、「数値を抽出」コンバータを利用して、変数から数値を抽出する際のエラーについて、共有いたします。

※時間が経過して変わってしまった箇所や間違っている箇所、不適切な表現があるかもしれませんが、その時は都度修正いたしますので、ご指摘いただけると幸いです。

私の就業先で出くわした事象

私の就業先で出くわした事象を例え話で説明します。

株式会社TBOの経理部門のお話です。
経理部には様々な申請があり、その中に子会社に関わる申請もあります。経理部に関わる申請は、ServiceNowで行いますが、入力ミスを防ぐために、申請の下書きをRPAで行っています。
入力データの元は、Excelに記載されています。ExcelのG列には、数値が必ず入っていなければいけないのですが、空白や文字列が入ってしまったため、セル値抽出を行う箇所でエラーになりました。

過去に開発されたBizRobo!のRPAでしたが、エラーハンドリングが正しく組み込まれていませんでした。今回原因を調査した際、BizRobo!ナレッジベースの下記URLが該当しました。
「数値を抽出」ステップで変数から数値を抽出する際に、入力から数値を抽出できませんとのエラーが発生します

詳細に解説します。
エラー発生個所箇所は、「セル値抽出(Extract Cell)」ステップになります。そのステップ内のコンバータで「数値を抽出」を使用している時にエラーになるケースがあります。

「数値を抽出」コンバータは、¥1,234,000,020のような通貨形式の数字でも対応可能です。

下記のようなExcelファイルがあると仮定します。金額と書いてあるC列を見てください。
C2のように、値段が書いてある場合は、エラーは発生しません。
C3やC4のように、空白や文字列がある場合に、エラーが発生します。

発生するエラーは、下記の通りです。

今まで説明したことは、下記URLに記載してあります。
「数値を抽出」ステップで変数から数値を抽出する際に、入力から数値を抽出できませんとのエラーが発生します
つまり、「セル値抽出(Extract Cell)」ステップ内の「数値を抽出」コンバータの使用している際に、数値以外の文字列や空白の場合に、エラーになることが書かれておりました。

私が対応した方法

今回のエラーを解消する方法で思いついた方法は、2つありました。

①「抽出」>「高度な抽出」コンバータを利用する
先ほど紹介したURLに書いてある方法となります。
数値のパターンが決まっている場合は、効果的だと考えています。
通貨のように、¥1,234,000,020と不規則なパターンの場合、適用するのが難しいと考えています。

②「数値を抽出」コンバータのまま、エラーとしてログ記録のチェックを外す
通貨のように、¥1,234,000,020と不規則なパターンの場合、①を適用するのは難しいです。通貨の場合は、「数値を抽出」コンバータのままの方が都合がいいです。
その場合、「エラーとしてログ記録」のチェックを外し、「Then」の選択肢を「次の代替手段を試行」か「無視して続行」を選択する方法もあります。

上記方法は、エラーがでても、無視して、後続処理を進める方法になります。数値以外の文字列や値が空白の場合、変数にはNullが入ります。
この場合、「テスト」ステップを利用すれば、エラー時にログを出力するようなロジックを組むことも可能です。
しかし、空白の時も数値以外の文字列の時も、どちらも変数にはNullが格納されるため、空白か文字列か判断したいときは向きません。

今回の改修では、下記理由から②で対応することにしました。
・ユーザーと要件を確認した際に数値とNullが入る可能性はあるが、文字列が入らないことが判明した。
・¥1,234,000,020のように通貨形式で出力されるため、パターンを定めることが難しい。

最後に

下記のエラーについて、共有しました。
「数値を抽出」ステップで変数から数値を抽出する際に、入力から数値を抽出できませんとのエラーが発生します

RPAで初めてエラーに出くわした時は、こういうエラーが出るのはなぜだろうと検討もつきませんでした。ナレッジベースに書いてあったので、助かりました。BizRobo!で不明点が出てきた時は、BizRobo!ナレッジベースとBizRobo! LAND Communityはとても有効だなと感じました。

今回の記事が、RPA開発で悩んでいる人の為になれば幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?