(O+P)ut

ITエンジニアのアウトプット録



(O+P)ut

OutPut Log by SE

【BluePrism入門】コレクションを新規ワークブックへ書き込む

Blueprismを用いたExcelへの書き込み

RPA*1による業務改善には.xlsxファイルが対象となるケースがあります。

以下の記事では、Excelからの情報取得に関して整理しました。

以下の記事では、Excelファイルに情報の追記を行いました。

本記事では、新たなExcelファイルを用意して書き込む流れを解説しています。

事前準備

書き込みたい情報を格納したコレクションを用意します。
今回は以下をColl1に入力しました。

Name Age
Ken 21
Ayu 19
Yu 24

BluePrismのプロセスは以下です。
f:id:mtiit:20190404170852p:plain

プロセスにもあるように、以下の6つのアクションです。

  • インスタンスを作成(CreateInstance
  • ワークブックを作成(CreateWorkbook
  • ワークシートを作成(CreateWorksheet
  • コレクションを書き込み(WriteCollection
  • ワークブックを保存(SaveWorkbookAs
  • インスタンスを閉じる(CreateInstance

以下、詳細です。

インスタンスを作成

Business Object MS Excel VBO
Action Create Instance

Outputs

Name Data Type Store In
handle Number handle
ワークシートを作成
Business Object MS Excel VBO
Action Create Instance

Inputs

Name Data Type Value
handle Number [handle]

Outputs

Name Data Type Store In
Workbook Name Number Workbook Name
ワークブックを作成
Business Object MS Excel VBO
Action Create Instance

Inputs

Name Data Type Value
handle Number [handle]

Outputs

Name Data Type Store In
Workbook Name Number Workbook Name
ワークシートを作成
Business Object MS Excel VBO
Action Create Worksheet

Inputs

Name Data Type Value
handle Number handle
Workbook Name Text [Workbook Name]
Worksheet Name Text "TestSheet"

ここではシート名を「TestSheet」としました。

コレクションを書き込み
Business Object MS Excel VBO
Action Write Collection

Inputs

Name Data Type Store In
handle Number handle
Workbook Name Text [Workbook Name]
Collection Collection [Col1]
Worksheet Name Text "TestSheet"
Cell Reference Text "A1"
Include Column Names Flag "True"

Worksheet Nameに書き込むワークシート名を指定します。
ここを上で記載したシート名と不整合が起きていればエラーとなりますのでご注意ください。

Worksheet Not Found : No worksheet was found with the name 'TestSheet' on the workbook 'Book1' within the instance with the handle: 1

また、Cell Referenceは書き込み開始セル、Include Column Namesはヘッダー名を書き込むか否かです。

ワークブックを保存
Business Object MS Excel VBO
Action Save Workbook As

Inputs

Name Data Type Value
handle Number handle
Workbook Name Text [Workbook Name]
Filename Text "C:\BluePrism\Test.xls"

Outputs

Name Data Type Stored In
New Workbook Name Text New Workbook Name
インスタンスを閉じる
Business Object MS Excel VBO
Action Close Instance

Inputs

Name Data Type Value
handle Number handle
Save Changes Flag "True"

実行結果

指定したパスに想定通りの内容が出力されています。
f:id:mtiit:20190404173021p:plain

ちなみに、このファイルが存在する状態でシート名のみを変更して再実行すると、元のシートがなくなります。
あくまでもワークブックを新規作成しているというところをご注意ください。

以上です。

*1:Robotic Process Automationの略