PowerAutomateの式を検索すると、日付、時間の加算関数はすぐに見つかった のですが、月初を指定する方法がわからず、やり方に迷ったため紹介したいと思います。
パラメータ | 設定値 |
基準時間 | utcNow() |
書式設定文字列 | yyyy-MM-01 ※一例です。日付の部分を1にしてください |
変換元のタイムゾーン | (UTC)協定世界時 |
変換先のタイムゾーン | 自分のタイムゾーン(日本なら UTC+09:00)大阪、札幌、東京) |
特定のメールを指定した受信フォルダに振り分けたいと思ったのですが、どこから設定してよいか迷ったため、操作方法を記載します。
届いたメールに対して、「HTTP要求を送信します」で返信メールの下書きを作成します。
メールは下書きフォルダに保存されます。
パラメータ | 設定値 |
URI | https://graph.microsoft.com/v1.0/me/messages/<新しいメールが届いた時(V3)のメッセージID>/createReply |
メソッド | POST |
本文 差出人のみに返信 | { "comment": "<返信するメールの本文>" } |
コンテンツの種類 | application/json |
本文 例1 返信先を差出人以外に変更 | { "message":{ "toRecipients":[ { "emailAddress": { "address":"aaa@sample.com", "name":"yamamoto ichiro" } }, { "emailAddress":{ "address":"bbb@sample.com", "name":"yamamoto tarou" } } ] }, "comment": "ありがとうございます!!" } |
本文 例2 返信先(CC)を追加 | { "message":{ "ccRecipients":[ { "emailAddress": { "address":"ccc@sample.com", "name":"yamamoto ichiro" } } ], }, "comment": "ありがとうございます!!" } |
PowerAutomateでSharepointのファイル名を変更したいということは結構あるのではないかと思います。
パラメータ | 設定値 |
サイトのアドレス | プルダウンから選択するか ドキュメントライブラリのURLを入力 |
ファイル パス | /<ドキュメントライブラリ名から始まるファイルパス> 例)/DocLIb_test/General/test/Book.xlsx |
パラメータ | 設定値 |
サイトのアドレス | プルダウンから選択するか ドキュメントライブラリのURLを入力 |
方法 | GET |
URI | _api/web/lists/GetByTitle('<ドキュメントライブラリ名>')/items(<パスによるファイルメタデータの取得 のItmeId>) |
パラメータ | 設定値 |
コンテンツ | <SharepointにHTTP要求を送信します の 本文(body)> |
スキーマ | (※サンプルから生成ボタンを押して設定。下記スキーマの設定を参照) |
以下の設定画面では、URIで指定したファイルの名前を「aaabbbdde1.xlsx」という名前に変更しています。
パラメータ | 設定値 |
サイトのアドレス | プルダウンから選択するか ドキュメントライブラリのURLを入力 |
方法 | GET |
URI | _api/web/lists/GetByTitle('<ドキュメントライブラリ名>')/items(<パスによるファイル メタデータの取得のItmeId>) |
パラメータ | 設定値 |
Content-Type | application/json;odata=verbose |
If-Match | * |
X-HTTP-Method | MERGE |
パラメータ | 設定値 |
ボディ | { '__metadata':{ 'type': '<JSON の解析 のType>' }, 'FileLeafRef':'<変更後のファイル名>' } |
PowerAutomateのフローの名前の変更方法がわかりにくく、迷ったので方法を紹介します。
こんにちは。
PowerAutomateを使って、普段の手作業を自動化できないかな?と試みています。
主に、ExcelOnlineとSharepointのトリガーやアクションを使うことが多いのですが、Excelファイルを参照すると、ロックされてしまいファイルの移動ができなくなってしまうという事がおこってしまいました。
この現象の解決方法について説明したいと思います。
Excelのテーブルを参照し、その後にそのExcelファイルを別フォルダへ移動しようとすると、Excelを参照した時にロックされているためファイルが移動できません。
例えば、以下のような処理を行った時に発生します。
・「表内に存在する行を一覧表示」のアクションを使って
Documents/General/test/Book11.xlsx のテーブルデータを読み込み
・「ファイルの移動」で別フォルダDocuments/General/sumi/ へ移動
実行した結果、
「ファイル '(移動しようとしたファイルパス)' はロック モードのため、移動できません。」
というエラーが発生してまいます。
原因は、移動しようとしたファイルが「表内に存在する行を一覧表示」で使いっぱなしとみなされてロックされているためだと思われます。
時間を置けば、ロックが解除されるのですが24時間かかることもあるそうです。そんなにまっていられませんね…。
そこで、以下のようにチェックアウト関連のアクションを入れたところ、ロックが発生せずにファイルを移動することができましたよ!
・「ファイルのチェックアウト」←追加!
・「表内に存在する行を一覧表示」のアクションを使ってテーブルデータを読み込み
・「ファイルのチェックアウトの破棄」←追加!
・「ファイルの移動」で別フォルダへ移動
前回まで「変数の初期化」、「配列変数に追加」のアクションを使ってみて、同じ形式でカンマ区切りのデータであればアレイ(配列)にできるということがわかりました。
ということは、アレイの中にアレイを入れて、二次元配列が作れそうです。
どういう時に使うかはさておき。試してみたいと思います。
通常のアレイ(配列)は[]でくくった、カンマ区切りで表します。
[11,12,13]
配列は0番目からのスタートになりますので、
上記の配列は0番目が11、1番目が12、2番目が13となります。
二次配列は、配列を入れ子にします。
[[11,12,13] ,[21,22,23], [31,32,33]]
variables('アレイ二次')[0][0]
読み込んだエクセルのvalueを、変数の初期化の初期値に設定してやることで、1行ごとのデータに分けて配列に格納されます。
1,2,3 とか {XX},{XX},{XX} みたいなカンマ区切りのデータを初期値で設定するとカンマで区切って、アレイデータが出来上がりです。
variables('アレイ変数名')[取得したい行数-1]?['エクセルでの項目名']
variables() のなかは、アレイ変数名
[] のなかは 配列の番号
?[] のなかは エクセルでの項目名(列の名前) です。
例えば、
variables('担当リスト')[0]?['氏名']
と指定すると、エクセルでいうと以下の赤枠のデータを参照できます。
こんな風に、式から入力します。
読み込んだエクセルのvalueを、Apply to Eachを使って「配列変数へ追加」のアクションを使用すると1行ずつデータを配列に格納することができます。
エクセルのvalueはこのように取得されます。
{}で区切った単位が1行分のデータです。
1行ごとに、配列変数の0番目、1番目、2番目に格納されます。
式variablesを使って、データを参照します。
variables('アレイ変数名')[取得したい行数-1]?['エクセルでの項目名']
variables() のなかは、アレイ変数名
[] のなかは 配列の番号
?[] のなかは エクセルでの項目名(列の名前) です。
例えば、
variables('担当リスト')[0]?['氏名']
と指定すると、エクセルでいうと以下の赤枠のデータを参照できます。
こんな風に、式から入力します。