Power Automate for Desktopの小技(こんなときどうする?)について記載したいと思います。
今回はSPOライブラリのファイルを直接開く方法になります。
メリット
そもそもSPOライブラリのファイルを直接開くメリットは以下のとおりと考えています。
・Webシステムへ入力するデータを事前にPower QueryやVBAで加工できる。
・常に最新のクラウド上のデータを扱える。
・ローカルフォルダにダウンロードする手間を無くせる。
SPO上のファイル例
今回は、以下のテストライブラリのTESTBOOK.xlsxを開く方法を考えたいと思います。
ファイルのパスを取得
テストライブラリのTESTBOOK.xlsxファイルを選択して「⋯」から「詳細」をクリックします。
右側に詳細メニューが開きますので、一番下までスクロールしてパスのコピーアイコンをクリックします。
補足:「リンクのコピー」では絶対パスが取れない
ライブラリ上の絶対パスを取得する必要があるため、詳細メニューのパスの機能を使用するところがポイントになります。
「リンクのコピー」では絶対パスが取得できません。
フローの作成
ここからPower Automate for Desktopのフローを作成していきます。
アプリケーションの実行
「アプリケーションの実行」アクションを配置し以下のパラメータを設定します。
パラメータ | 設定値 | 備考 |
---|---|---|
アプリケーション パス | ms-excel:ofe|ofc|u|https://(取得したファイルのパス) | Officeアプリ毎に起動方法が異なる。詳細は以下表を確認 |
コマンドライン引数 | 設定なし | アプリケーション起動時の付加情報を与えることで起動時の指定が可能になる |
作業フォルダー | 設定なし | コマンドラインでの起動時の作業フォルダー |
ウィンドウスタイル | 最大化 | 起動したアプリ画面の大きさ |
アプリケーション起動後 | アプリケーションの完了を待機 | 次のアクションの起動タイミングを設定 |
タイムアウト | 180 | タイムアウトさせる秒数を指定 |
アプリケーションパスについては、以下のとおり指定することが可能です。
Excelの場合
パターン | 設定値 |
---|---|
読取専用で開く場合 | ms-excel:https://(取得したファイルのパス) |
編集モード(通常)で開く場合 | ms-excel:ofe|ofc|u|https://(取得したファイルのパス) |
Wordの場合
パターン | 設定値 |
---|---|
読取専用で開く場合 | ms-word:https://(取得したファイルのパス) |
編集モード(通常)で開く場合 | ms-word:ofe|ofc|u|https://(取得したファイルのパス) |
PowerPointの場合
パターン | 設定値 |
---|---|
読取専用で開く場合 | ms-powerpoint:https://(取得したファイルのパス) |
編集モード(通常)で開く場合 | ms-powerpoint:ofe|ofc|u|https://(取得したファイルのパス) |
アプリケーション起動後については、「アプリケーションの完了を待機」としました。
※「すぐに実行」も指定が可能ですが、後続のアクションが動かない場合もあるため、避けたほうが無難です。
補足:「Excelの起動」アクションではエラーとなる
「Excelの起動」のアクションでは、エラーとなりますので上記の「アプリケーションの実行」アクションが必要となります。
実行中のExcelに添付
続いて「実行中のExcelに添付」アクションを追加します。
以下パラメータを設定します。
パラメータ | 設定値 | 備考 |
---|---|---|
ドキュメント名 | TESTBOOK.xlsx | すでに開いているExcelドキュメントに添付します。と説明があるため、TESTBOOK.xlsxを開いた状態で指定が可能です。 |
上記のアクションにより、ExcelInstanceを後続のアクションに渡すことでSPOライブラリ上のファイルの操作が可能となります。
フローの全体
まとめ
・「アプリケーションの実行」アクションでSPOライブラリのファイルをPower Automate for Desktopで起動できる。
・「アプリケーションパス」は「ms-excel:https://(取得したファイルのパス)」または「ms-excel:ofe|ofc|u|https://(取得したファイルのパス)」で指定する。
・「実行中のExcelに添付」アクションで起動したファイルのインスタンスを取得可能。