Blue PrismでExcelを操作する<詳細版②> Excel VBOの代表的なアクション(前処理編)
Excelの自動化記事、詳細版2回目です。
前回はこちら;
この記事の目次はこちら;
- MS Excel VBOの代表的なアクション
- Excel前処理(インスタンス作成): Create Instance
- Excel前処理(表示): Show
- Excel前処理(ブックを開く): Open Workbook
- まとめ
MS Excel VBOの代表的なアクション
Excelの自動化にMS Excel VBOが必要なことは、前回の記事で触れました。今回は、Excel VBOの代表的なアクションを解説していきます。
じゃあ、MS Excel VBOの代表的なアクションって、具体的に何ですか…と聞かれると、別に統計を取っているわけでもないので、断定はできませんが、例えば以前の記事
で作成したプロセスの、以下の部分が代表的だと思います。
そういうわけで、この記事では、上のプロセスが操作しているMS Excel VBOの6つのアクション;
- Excel前処理(インスタンス作成): Create Instance
- Excel前処理(表示): Show
- Excel前処理(ブックを開く): Open Workbook
- Excel編集(表の書き込み): Write Collection
- Excel後処理(保存): Save Workbook
- Excel後処理(終了): Exit
を順番に説明していきます。ただ、ちょっと数が多いので、数回に分けます。
Excel前処理(インスタンス作成): Create Instance
Create Instanceでは、Blue Prismが操作できるExcelのインスタンスを作成します。
。。あーそれね、それって説明が難しいんだよね。。教えて!gooで聞いている人もいたわぁ。
難しく考える必要はなく、Excelのアイコンをダブルクリックして開いたやつ=Excelのインスタンス、と思っておけば良いと思います。
したがって、Excelのアイコンをダブルクリックする処理=Create Instanceと思っていればOKです。とりあえずは。
難しく考えるのは、難しいことが起きてからで良いと思ってます。
Create Instanceの入力
- Enable Events: イベントを有効にするかどうか
ここでいうイベントは、Excel用語で、"Excel イベント"で検索すると、たくさん記事が出てきます。
最初は、とりあえずTrueにしておけばOKです。
Create Instanceの出力
handleについても、ちょっと補足の説明が必要です。先ほど、Excelのアイコンをダブルクリックして開いたやつ=Excelのインスタンスと書きました。
Excelのアイコンを何回もクリックしたり、Excelが開いた状態でOutlookの添付Excelファイルを開いたりすると、Excelが何個も開きます。この状態が、Excelのインスタンスが複数、立ち上がっている状態です。
Excelのインスタンスが複数ある場合、どのインスタンスをBlue Prismが処理するのか、選ぶ必要があります。Create Instanceでは、Excelのインスタンスを立ち上げた後、そのインスタンスの番号を数字として出力してくれます。これがhandleです。
…という話を、外国の方が丁寧に絵を描いて説明されてました。ありがてぇありがてぇ。
なお、現在アクティブなインスタンスの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の入力
File nameは、ファイルのパスを含めて記入します。
例えば"C:\temp\sampleWorkBook.xlsx"みたいな感じです。
Open Workbookの出力
- Worbook name: Blue Prismの中でブックを識別するための文字列
以降の処理では、このWorkbook nameを使って、Excelに書き込んだり、Excelから読み取ったりします。
まとめ
- 前処理だけでも、丁寧に説明すると、結構、書くことがあるなぁ。。
- 丁寧な説明って、一時期、ニュース記事とかで何度も見た記憶があります。。丁寧という言葉は、すごく抽象的な言葉なんで、線引きが難しいですよね。
- 次回は編集編なんだけど、結構、大変そうだなぁ。。
小並感!