CodeZine(コードジン)

特集ページ一覧

Windows10の無償デスクトップ自動化ツール「Power Automate Desktop」でExcelブック操作を自動化する

Power Automate Desktopチュートリアル 第5回

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2021/12/08 11:00
目次

Excelブックの読み取り

 ワークフローの処理結果データがデータテーブル形式の場合、Excelブックに出力・保存できることを説明しました。

 逆に、既存データの入ったExcelブックに対して、セルを指定して個別のデータを読み取ったり、範囲を指定して、データテーブル型変数に読み取った値を格納したりすることもできます。以下では、そのようなフローを作成してみましょう。

[1][ファイルの選択ダイアログを表示]アクションを配置する

 新規にフローを作成し、[メッセージボックス]アクショングループの[ファイルの選択ダイアログを表示]アクションを配置します。

ファイル選択ダイアログを表示アクションを配置
ファイル選択ダイアログを表示アクションを配置

 パラメーター設定画面が表示されたら、以下のように設定して保存します。

  • ファイルフィルター:*.xlsx

[2]Excelの起動アクションを配置する

 [Excel]アクショングループの[Excelの起動]アクションを配置します。

Excelの起動アクションを配置
Excelの起動アクションを配置
Excelの起動アクションの設定
Excelの起動アクションの設定

 パラメーターの選択で以下のように設定して保存します。

  • Excelの起動:次のドキュメントを開く
  • ドキュメントパス:%SelectedFile%

 ファイル選択ダイアログで選択されたファイルは%SelectedFile%で表されるので、「これで選択されたファイルをExcelで開きなさい」という意味になります。

[3]ワークシートのデータを読み取る

 [Excelのワークシートから読み取り]アクションを配置します。

Excelのワークシートから読み取りアクションの配置
Excelのワークシートから読み取りアクションの配置
Excelのワークシートから読み取りアクションの設定
Excelのワークシートから読み取りアクションの設定

 パラメーターの選択で以下のように設定して保存します。

  • 取得:ワークシートに含まれるすべての値
  • 詳細をクリックして、範囲の最初の行に列名が含まれています:ON

[Note]

 [Excelのワークシートから読み取り]アクションの取得設定は以下のようなものがあります。

取得設定
取得設定 説明
単一セルの値 個別の値を取得
セル範囲の値 範囲(先頭列、先頭行、最終列、最終行)を指定してデータテーブルとして取得
選択範囲の値 選択している範囲をデータテーブルとして取得
ワークシートに含まれるすべての値 値がある範囲をデータテーブルとして取得

 [セル範囲の値]で、最終行の指定を「データのある最後の行まで」とするには、これらのアクションの前に、[Excel ワークシートから最初の空の列や行を取得]や[Excel ワークシートから列における最初の空の行を取得]で、最初の空行を取得して1を引いたもの「%FirstFreeRow-1%」とする必要があります。

[4]Excelを閉じるアクションを配置する

 [Excelを閉じる]アクションを配置し、設定は既定のまま保存します。

[5]フローを保存する

 ツールバーの保存ボタンをクリックしてフローを保存します。

Excel読み取りワークフローの保存
Excel読み取りワークフローの保存

[6]フローを実行する

 ツールバーの実行ボタンをクリックしてフローを実行します。ファイル選択ダイアログで、前節で作成したExcelブックを選択します。

 この際、選択したブックがExcelで開かれていると、ここで開くことができない旨のエラーとなります。あらかじめ、閉じておくようにしてください。

開くダイアログ
開くダイアログ

[7]読み込んだ変数の内容を確認する

 変数ペインのワークフロー変数で、ExcelDataをダブルクリックして、変数の値ダイアログを表示します。Excelブックのテーブルの内容が、データテーブル型の変数に読み込まれていることが確認できます。

データテーブル型ExcelData変数の値
データテーブル型ExcelData変数の値

 [Excelのワークシートから読み取り]アクションは、データテーブル型の値が入る変数を作成するアクションです。ワークフローで使用する処理のための元データや初期設定をあらかじめExcelブックに保存しておいて、ワークフロー開始時に読み込むといった使い方ができます。

まとめ

 デスクトップ上のExcelの基本的な操作について、説明しました。次回はブラウザー自動化について説明します。



  • LINEで送る
  • このエントリーをはてなブックマークに追加

バックナンバー

連載:Power Automate Desktopチュートリアル

著者プロフィール

  • WINGSプロジェクト 飯島 聡(WINGSプロジェクト イイジマ サトシ)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂...

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XM...

あなたにオススメ

All contents copyright © 2005-2022 Shoeisha Co., Ltd. All rights reserved. ver.1.5