UiPath StudioX かんたんRPAレシピ集(No.5)複数のExcelファイルを1つのExcelへ1シート単位でマージする(vol.32)
序章
皆さん、こんにちは!“UiPath StudioX かんたんRPAレシピ集“のお時間です。
本記事では、お仕事でよくある身の回りの作業を簡単・スピーディーに自動化するため、
自動化の事例と、StudioXによるワークフローの作り方を連載でご紹介しています。
本日のレシピでは、「複数のExcelファイルを1つのExcelへ1シート単位でマージする」方法を紹介させていただきます。
UiPath StudioX レシピの概要
前回の記事では複数のPowerPointを一つにマージしてPDF出力、またはPDFをページで分割する方法をご紹介しましたが、今回は複数のExcelファイルをマージする方法についてご紹介します。
具体的には、複数のExcelファイルを1つのExcelへ1シート単位でマージするという作業を自動化してみます。
StudioXで作成したワークフローの全体像は下記のとおりです。
それでは、次にワークフロー作成の手順を解説していきます。
手順1. マージ先のExcelファイルを開く
まずは、マージ先のExcelファイルを開きます。
指定のExcelファイルを開く場合は、「Excelファイルを使用」アクティビティを選択し、アクティビティのプロパティには下記のとおり設定してください。
# |
プロパティ名 |
設定値 |
---|---|---|
1 |
Excelファイル |
指定のExcelファイルの場所を入力します。 |
2 |
参照名 |
後続のアクティビティで参照するための名称を入力します。このレシピでは「まとめ用Excel」とします。 |
3 |
変更を保存 |
Excelに変更があった際に保存するかどうか指定できます。このレシピではチェックを入れます。 |
手順2. 各Excelファイルのシートを、一つのExcelファイルにマージする
手順2では以下の手順を作成しています。
-
指定されたフォルダーに格納されているExcelファイルの数だけ、マージ先にシートを挿入
-
マージ元ファイルの値を貼り付け
-
シート名を変更
まずは、指定したフォルダー内のファイルを一つずつ処理していきます。
「繰り返し(フォルダー内の各ファイル)」アクティビティを選択し、プロパティには下記のとおり設定してください。
# |
プロパティ名 |
設定値 |
---|---|---|
1 |
繰り返し |
後続のアクティビティで参照する名称を入力します。このレシピでは「各個人ファイル」とします。 |
2 |
フォルダー |
処理対象のフォルダーを選択します。 |
3 |
フィルター条件
|
処理対象のファイルの条件を設定します。このレシピでは「*.xlsx」とします。 |
4 |
並べ替え順 |
ファイルを処理する順番を設定します。このレシピでは「名前(昇順)」を選択します。 |
次に、マージ元のExcelファイルを開きます。
「Excelファイルを使用」アクティビティを選択し、プロパティには下記のとおり設定してください。
# |
プロパティ名 |
設定値 |
---|---|---|
1 |
Excelファイル |
指定のPowerPointファイルの場所を入力します。右側の(+)ボタンをクリック後、「各個人ファイル」を選択し、「完全名」を選択してください。 |
2 |
参照名 |
後続のアクティビティで参照するための名称を入力します。このレシピでは「各個人Excel」とします。 |
次に、マージ先のExcelファイルにシートを挿入します。
「シートを挿入」アクティビティを選択し、プロパティには下記のとおり設定してください。
# |
プロパティ名 |
設定値 |
---|---|---|
1 |
シートを作成するブック |
シートを作成するExcelファイルを指定します。このレシピでは「まとめ用Excel」とします。 |
2 |
シート名 |
作成するシートの名前を設定します。 右側の(+)ボタンをクリック後、「各個人ファイル」を選択し、「名前」を選択してください。 |
3 |
新しいシートの参照名 |
新しいシートの参照名を指定します。 右側の(+)ボタンをクリックすると変数を作成できるため、変数を作成し値の保存先を設定します。このレシピでは「シートを挿入_の_新しいシートの名前」とします。 |
次に、マージ元のデータをコピーし、作成したシートに貼り付けていきます。
「範囲をコピー/貼り付け」アクティビティを選択し、プロパティには下記のとおり設定してください。
# |
プロパティ名 |
設定値 |
---|---|---|
1 |
ソース |
コピーする対象を指定します。 右側の(+)ボタンをクリックし、「各個人Excel」の「カスタム入力」を選択してください。カスタム入力の「シート」をラジオボタンで選択します。このレシピではワークシート名に「Sheet1」を設定します。 |
2 |
ターゲット |
コピーしたデータの貼り付け先を設定します。 右側の(+)ボタンをクリックし、「変数を使用」から「シートを挿入_の_新しいシートの名前」を設定します。 |
3 |
コピーする内容 |
プルダウンから「すべて」を選択します。 |
次に、シート名を変更します。
「テキストを変更」アクティビティを選択し、プロパティには下記のとおり設定してください。
# |
プロパティ名 |
設定値 |
---|---|---|
1 |
変更するテキスト
|
変更するテキストを指定します。 (+)ボタンをクリックし、「変数を使用」から「シートを挿入_の_新しいシートの名前」の「名前」を選択します。 |
2 |
テキストを検索して置換 |
別途解説します。 |
3 |
名前を付けて結果を保存
|
変更後のシート名を保存します。 右側の(+)ボタンをクリックすると変数を作成できるため、変数を作成し値の保存先を設定します。このレシピでは「変更後シート名」とします。 |
テキストを検索して置換
「変更を追加」のプルダウンから「検索して置換」を選択し、「テキストを変更」アクティビティ内に二つ設置します。
一つ目の「テキストを検索して置換」のプロパティには下記のとおり設定してください。
# |
プロパティ名 |
設定値 |
---|---|---|
1 |
次を検索 |
置換対象の検索する文字列を指定します。 右側の(+)ボタンをクリックし、「テキスト」を選択してください。このレシピではワークシート名に「サンプル経費_2022年4月」を設定します。 |
2 |
次で置換 |
置換する文字列を指定します。 右側の(+)ボタンをクリックし、「テキスト – 空の値」を選択してください。 |
二つ目の「テキストを検索して置換」のプロパティには下記のとおり設定してください。
# |
プロパティ名 |
設定値 |
---|---|---|
1 |
次を検索 |
置換対象の検索する文字列を指定します。 右側の(+)ボタンをクリックし、「テキスト」を選択してください。このレシピではワークシート名に「.xlsx」を設定します。 |
2 |
次で置換 |
置換する文字列を指定します。 右側の(+)ボタンをクリックし、「テキスト – 空の値」を選択してください。 |
これでシート名から「サンプル経費_2022年4月」と「.xlsx」は削除されます。
次に、シート名を変更します。
「シート名を変更」アクティビティを選択し、プロパティには下記のとおり設定してください。
# |
プロパティ名 |
設定値 |
---|---|---|
1 |
変更するシート |
変更するシートを指定します。 右側の(+)ボタンをクリックし、「変数を使用」の「シートを挿入_の_新しいシート名」を選択してください。 |
2 |
新しいシート名 |
新しいシート名を設定します。 右側の(+)ボタンをクリックし、「変数を使用」の「変更後シート名」を選択してください。 |
まとめ
ワークフロー作成の手順は以上です。完成したワークフローを再度掲載します。
このワークフローを実行していただくと、複数のExcelファイルを1つのExcelへ1シート単位でマージする作業を自動化することができます。
これでもう手動で複数Excelファイルをマージする作業が不要になりますね。
今回のレシピでは、StudioXを使って「複数のExcelファイルを1つのExcelへ1シート単位でマージする」方法を紹介させていただきました。
StudioXは、本日ご紹介した以外にも様々なOffice製品の自動化が出来ます。今後もOffice製品を自動化する色々なレシピをご紹介させていただきます。
本日のレシピは以上です。
それでは次回もお楽しみに。
弊社ではRPAの推進と活用をもう一度はじめたい方に参考になる資料「今こそ言える、RPA成功への近道 ~推進と活用の2軸から‘もう一度’はじめましょう!~」をご用意しております。
本資料は、RPA導入や再活用に向けて必見の資料です。ぜひダウンロードいただき、ご覧ください。