1
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 3 years have passed since last update.

[VBA][UiPath]UiPathでOCR処理するためのテストデータを自動で作成する

Last updated at Posted at 2021-05-08

[0]はじめに

Zitanです。
UiPathでOCRの繰り返し処理をする前段階として、テストデータをExcelVBAで作成してみました。
今回はOCRは直接的に関係ないのですが、定型事務的な作業の自動化としては需要があると思います。
次回の記事で今回作ったテスト用の請求書データ(PDF)をOCR処理します。

<前回の記事>

[1]今回作ったもの

前回のUiPath(OCR)の記事でも使った請求書のテンプレートです。
image.png

ちなみにテンプレートは、ここで入手しました。
※利用規定に商用・非商用問わず無料で利用できると記載されています。便利なので使用させていただきました。

この請求書をテンプレートとして、下記のデータを10件書き込みます。
A社からJ社まで10社分の請求書をPDFで保存するところまで自動化しました。
image.png

マクロファイルと同じ階層に、こんな感じで格納されます。更新日時を見てわかる通り、10社分の請求書が1分以内(10秒弱)で出来ました。
image.png

例としてA社の請求書の中身です。
image.png

[2]プログラムコードの紹介

コード全文はGitHubに全体公開しています。

マクロファイルは標準モジュールを2つ作成して、それぞれ「Common」、「請求書データ転記とPDF化」としました。
最初はPDF化と転記のプロセスを2つのモジュールで分ける予定で、「Common」モジュールに共通で使用する変数を定義しました。
実際は転記とPDF化を一つのモジュールで完結させました。。。
image.png

請求書シートについて、事前にセルの名前の定義が必要です。
※請求書雛形と呼ぶことにします。

実際の請求書雛形は塗りつぶしていませんが、説明のために塗りつぶしたセルの色と対応させています。
image.png

セルの名前の定義の方法ですが、赤色で塗りつぶしたセルを選択すると左上にセルの名前を入力することができます。
image.png
※通常、セルに名前を定義していない場合、A1セルをクリックするとセルの名前はデフォルトでA1と表示されます。
image.png

セルの名前の定義をしておくと、コーディングするときに何を操作しているのか分かりやすく、可読性が上がるというメリットがあります。

[3]実際に動くとこんな感じ

アプリの動画記録時間が7秒なので、ギリギリ時間内に収まる5社分のデモ動画にしました。
Image from Gyazo

おそらくPDF化するところに時間がかかるのだと思いますが、手作業よりは圧倒的に早いです。

[4]まとめ

いかがでしょうか。
次回は、今回作成したPDFのデータ全件に対して、UiPathでOCR処理を行いたいと思います。

1
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
1
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?