UiPath<ユーアイパス>は、RPA※1の代表的なソフトウェアのひとつです。世界で4,000社以上に導入され、国内では1,000社以上の導入実績があります(2019年時点)。
※1 RPA<Robotic Process Automation>「ロボットによる処理の自動化」のこと。
導入企業も多い一方、一部プログラミング知識が必要なため、「現場でなかなか使いこなせない…」とお悩みの企業もいらっしゃいます。
せっかくUiPathを導入しているのであれば、ぜひもっと便利に使ってほしい…。
そんな現役UiPathエンジニアの想いから、UiPathについて具体的なプロセス※2の作成方法を解説していきます。
※2 UiPathで作成したプログラムのこと。
本稿では、毎月発生するExcelの請求書作成業務を、ボタンひとつで自動化できるプロセスの作り方をご紹介。
記事の通りにプロセスを作成すれば、誰でも明日から面倒な請求書作成作業から解放されます。ぜひお試しください。
【RPAツール徹底比較】自社に最適なRPAツールとは?
代表的なRPAツールである「WinActor」「UiPath」「Power Automate Desktop」、3つの特徴をまとめて比較しました。
特典として、それぞれのツールで同じ作業を自動化した比較動画のURLも掲載しています。
RPA導入にお悩みの方、ツール選定の決め手に欠ける方はぜひご活用ください。
どんな業務フローを自動化する?
各取引先から来た注文書をAI-OCR※で読み取り、データ化(Excel)したものを、UiPathを使って所定のフォーマットに転記、別フォルダに保存するプロセスを作成します。
※AI-OCR OCRは、あらかじめ設定した活字や手書き文字などを画像データとして取り込み、編集可能なテキストデータに変換する技術(光学式文字認識)のこと。AI-OCRは設定外の活字にも対応し、学習することで対応範囲を広げていきます。
参考:「ペーパーレス化を進めたい方は注目! 「DX Suite AI-OCR」を使って注文書をデータ化しよう」
まずは、以下動画をご覧ください。
上記動画は、すでにAI-OCRによってデータ化された各取引先の注文書内容を、所定のフォーマットに転記、保存名を「各取引先名+日付」とし、別フォルダに保存しています。
準備するもの
プロセスを作成するにあたって、以下2つをご用意ください。
● 請求一覧(各取引先の注文内容が1行単位でまとまっているもの)
● 請求書フォーマット
プロセスを整理しよう
今回のプロセスは以下のような流れになります。
- 日付取得
- 請求一覧データ取得
- 繰り返し開始(データの各行)
- 会社毎請求書パス作成
- 請求書フォーマットコピー
- 読み取った情報を転記
- 上書き保存
- 繰り返し終了
いきなりプロセス作成に取り掛かるのではなく、全体の流れを把握してからの方がスムーズです。上記のような箇条書きで構いませんので、整理してからプロセス作成に取り掛かりましょう。
大まかに8つに分類できました。それでは、プロセスを作成していきましょう。
UiPathで請求書(Excel)作成を自動化① 日付取得
アクティビティ※3タブ内にある、 ワークフロー>制御>「代入」を使用します。
※3 アクティビティとは、UiPathで用意されている最小単位の部品のこと。追加・編集して自動化処理を組み立てます。
こちらのアクティビティを使用することで、本日の日付をyyyymmdd形式で取得することができます(例:2022年7月10日→20220710)。
プロパティの設定は、左辺に取得した日付を保存する変数名を設定し、右辺には以下の内容を設定すればOKです。
「DateTime.Now.ToString(“yyyyMMdd”)」
このようにすると、現在日時を指定した形式の文字列として取得できます。
UiPathで請求書(Excel)作成を自動化② 請求一覧データ取得
日付を取得した後は、請求一覧の「全データ取得」を行います。
まずは、「最終行の取得」とは何かを説明します。以下はサンプルの画像です。
アクティビティタブ内にある、 アプリの連携>Excel >「範囲を読み込み」 を使用します。
こちらを、代入の下にドラッグアンドドロップし、設定項目に記載の通り、プロパティの設定を行ってください。
データテーブルを格納する変数は分かりやすく「DT_請求一覧」とします。
作成のポイント
作成する請求書の数は、毎月同じではないでしょう。
データ量の可変に対応するために、アクティビティ「範囲を読み込み」でデータの行数に関わらず全てのデータを取得しましょう。
UiPathで請求書(Excel)作成を自動化③ 繰り返し(データテーブルの各行)
データテーブルの1行目の情報を転記→2行目…と処理を連続して行うため、「繰り返し (データ テーブルの各行)」を使用します。
アクティビティタブ内の プログラミング>データテーブル>「繰り返し (データテーブルの各行)」 を、範囲を読み込みの下にドラッグアンドドロップ後、プロパティの設定を行います。
上記の設定は、データテーブル型の変数「DT_請求一覧」のデータ行の数だけ動作を繰り返すという意味です。
CurrentRowは直訳で現在行を表します。繰り返しの中でデータテーブル上の指定の列の値を使用する場合は、「CurrentRow(“項目名”).ToString」と設定していきます。
・CurrentRow → 現在行
・(“列名”) → どの列の値を使用するか”列名”の箇所に「請求NO」、「会社名」などを設定
・.ToString → 指定した値を文字列に変換
UiPathで請求書(Excel)作成を自動化④ 会社毎請求書パス作成
情報を転記する前に、請求書フォーマットをコピーして会社ごとの請求書ファイルを作成します。
まずはファイルコピーのための会社毎請求書のパスを作成しましょう。
アクティビティタブ内にある、ワークフロー>制御>「代入」 を繰り返し内にドラッグアンドドロップし、プロパティの設定を行ってください。
こちらのアクティビティを活用することで、日付の取得だけでなく、文字列の連結を行いパスを作成することもできます。
ちなみに今回は、指定した保存フォルダに、「会社名_日付.xlsx」で請求書ファイルをコピーするようファイルパスを作成します。
UiPathで請求書(Excel)作成を自動化⑤ 請求書フォーマットコピー
会社毎請求書のパスを作成したら、請求書フォーマットをコピーして会社毎請求書ファイルを作成します。
アクティビティタブ内にある、 システム>ファイル >「ファイルをコピー」 を繰り返し内、代入の下にドラッグアンドドロップし、プロパティの設定を行ってください。
UiPathで請求書(Excel)作成を自動化⑥ 読み取った情報を転記
読み取った情報を転記して、会社ごとに請求書を作成します。
Excelの操作をするにはまずアクティビティタブ内にある、 アプリの連携>Excel >「Excelアプリケーションスコープ」 をファイルコピーの下にドラッグアンドドロップし、プロパティの設定を行ってください。
Excelアプリケーションスコープを使用することで、指定のExcelファイルを開くところから、「実行」内の処理完了後の上書き保存まで通しで実施することができます。
次にExcelに情報を転記するために、Excelアプリケーションスコープ内の「実行」にアクティビティタブ内にある、 アプリの連携>Excel >「セルに書き込み」 を5つドラッグアンドドロップし、それぞれ以下の通りに設定してください。
UiPathで請求書(Excel)作成を自動化⑦ 上書き保存
情報の転記後、保存処理が必要ですがExcelアプリケーションスコープの設定時に「変更を保存」にチェクが入っていれば、Excelアプリケーションスコープ「実行」内の処理完了後に自動的にExcelファイルが上書き保存されます。
プロセスの完成イメージ
プロセスの完成イメージは、以下の通りです。
まとめ
本稿でご紹介したそれぞれの項目について、以下のアクティビティを使用しました。
- 日付取得:「代入」
- 請求一覧データ取得:Excel >「範囲を読み込み」
- 繰り返し開始(データの各行):「繰り返し」
- 会社毎請求書パス作成:「代入」
- 請求書フォーマットコピー:「ファイルをコピー」
- 読み取った情報を転記(会社毎請求書):「Excelアプリケーションスコープ」「セルに書き込み」
- 上書き保存
- 繰り返し終了
今回使用したアクティビティの使い方を覚えると、見積書や発注書などにも応用することが可能です。自動化業務の幅が広がるので、業務効率アップを目指して、ぜひさまざまな業務に活用してみてください。
「記事で言われていることもよくわからない…」「もっと複雑な業務を自動化したい」といったお困りごとがあれば、ぜひお気軽に弊社までお問い合わせください。
ロボフィスのRPA導入支援なら
▶業務フローの整理からお手伝い
▶投資対効果を提示
▶内製化できるよう人材育成