Enterprise Blue Ocean ◮

神谷町RPAブログ

  • Blue Prism の製品概要がよくわかるWebページ動画取材記事
  • Blue Prism の Blue Prism 事始め!オンボーディングの記事はこちら
  • Blue Prism の Azure フリー・トライアルの利用手順はこちら
  • Blue Prism で Excelを操作する記事はこちら
  • Blue Prism のベストプラクティス記事はこちら
  • Blue Prism のユーザー・コミュニティこちら。ぜひご参加ください☆

Blue PrismでExcelを操作する<詳細版②> Excel VBOの代表的なアクション(前処理編)

Excelの自動化記事、詳細版2回目です。

前回はこちら;

ebo.hatenablog.com

この記事の目次はこちら;

 

MS Excel VBOの代表的なアクション

Excelの自動化にMS Excel VBOが必要なことは、前回の記事で触れました。今回は、Excel VBOの代表的なアクションを解説していきます。

じゃあ、MS Excel VBOの代表的なアクションって、具体的に何ですか…と聞かれると、別に統計を取っているわけでもないので、断定はできませんが、例えば以前の記事

ebo.hatenablog.com

で作成したプロセスの、以下の部分が代表的だと思います。

f:id:EnterpriseBlueOcean:20181005123604p:plain

そういうわけで、この記事では、上のプロセスが操作しているMS Excel VBOの6つのアクション;

  1. Excel前処理(インスタンス作成): Create Instance
  2. Excel前処理(表示): Show
  3. Excel前処理(ブックを開く): Open Workbook
  4. Excel編集(表の書き込み): Write Collection
  5. Excel後処理(保存): Save Workbook
  6. Excel後処理(終了): Exit

を順番に説明していきます。ただ、ちょっと数が多いので、数回に分けます。

 

Excel前処理(インスタンス作成): Create Instance

Create Instanceでは、Blue Prismが操作できるExcelインスタンスを作成します。

Excelインスタンス…?って何ですか?

。。あーそれね、それって説明が難しいんだよね。。教えて!gooで聞いている人もいたわぁ。

oshiete.goo.ne.jp

難しく考える必要はなく、Excelのアイコンをダブルクリックして開いたやつ=Excelインスタンス、と思っておけば良いと思います。

したがって、Excelのアイコンをダブルクリックする処理=Create Instanceと思っていればOKです。とりあえずは。

難しく考えるのは、難しいことが起きてからで良いと思ってます。

Create Instanceの入力

  • Enable Events: イベントを有効にするかどうか

ここでいうイベントは、Excel用語で、"Excel イベント"で検索すると、たくさん記事が出てきます。

tonari-it.com

最初は、とりあえずTrueにしておけばOKです。

Create Instanceの出力

handleについても、ちょっと補足の説明が必要です。先ほど、Excelのアイコンをダブルクリックして開いたやつ=Excelインスタンスと書きました。

Excelのアイコンを何回もクリックしたり、Excelが開いた状態でOutlookの添付Excelファイルを開いたりすると、Excelが何個も開きます。この状態が、Excelインスタンスが複数、立ち上がっている状態です。

Excelインスタンスが複数ある場合、どのインスタンスをBlue Prismが処理するのか、選ぶ必要があります。Create Instanceでは、Excelインスタンスを立ち上げた後、そのインスタンスの番号を数字として出力してくれます。これがhandleです。

…という話を、外国の方が丁寧に絵を描いて説明されてました。ありがてぇありがてぇ。

stackoverflow.com

なお、現在アクティブなインスタンスのhandleは0です。

 

Excel前処理(表示): Show

Excelの画面をデスクトップに表示させます。

この前処理は必須ではありません。つまり、Create InstanceでExcelインスタンスを立ち上げた後、Showをしないと、デスクトップにはExcelが表示されませんが、処理は粛々と実行されます。

こういったデスクトップに画面を表示せずに行う処理を、バックグラウンド処理と呼ぶ人がいるようです。なお、別に何も凄いことではありません。

Showの入力

Showの出力

Showの出力はありません。

 

Excel前処理(ブックを開く): Open Workbook

ファイル名を指定して、Excelのブックを開きます。

Create Instanceしただけでは、Excelが起動しただけで、何もファイルを開いていない状態なので、Open Workbookでブックを開きます。

新しいブックを作りたいときは、Open Workbookではなく、代わりにCreate Workbookが使えます。

Open Workbookの入力

  • handleExcelインスタンスを識別するための数値。さっき説明したやつです
  • File name: 対象のExcelブック(xlsxファイル)

File nameは、ファイルのパスを含めて記入します。

例えば"C:\temp\sampleWorkBook.xlsx"みたいな感じです。

Open Workbookの出力

  • Worbook name: Blue Prismの中でブックを識別するための文字列

以降の処理では、このWorkbook nameを使って、Excelに書き込んだり、Excelから読み取ったりします。

 

まとめ

  • 前処理だけでも、丁寧に説明すると、結構、書くことがあるなぁ。。
  • 丁寧な説明って、一時期、ニュース記事とかで何度も見た記憶があります。。丁寧という言葉は、すごく抽象的な言葉なんで、線引きが難しいですよね。
  • 次回は編集編なんだけど、結構、大変そうだなぁ。。

小並感!