Excel で日々の変更を記録し、Power Automate フローでレポートする
Power Automate と Office スクリプトを組み合わせて、反復的なタスクを処理します。 このサンプルでは、毎日 1 つの数値読み取り値をブックに記録し、昨日からの変更を報告する作業を行います。 フローを作成して、その読み取り値を取得し、ブックに記録し、メールで変更を報告します。
セットアップ: Excel ファイルのサンプル
このブックには、スクリプトで想定されるデータ、オブジェクト、書式設定が含まれています。
サンプル コード: 毎日の読み取り値を記録して報告する
サンプル ブックに次のスクリプトを追加します。 Excel で、[新しいスクリプトの自動化] を>使用してコードを貼り付け、スクリプトを保存します。 [ 毎日の値を記録する] として保存し、サンプルを自分で試してください。
function main(workbook: ExcelScript.Workbook, newData: string): string {
// Get the table by its name.
const table = workbook.getTable("ReadingTable");
// Read the current last entry in the Reading column.
const readingColumn = table.getColumnByName("Reading");
const readingColumnValues = readingColumn.getRange().getValues();
const previousValue = readingColumnValues[readingColumnValues.length - 1][0] as number;
// Add a row with the date, new value, and a formula calculating the difference.
const currentDate = new Date(Date.now()).toLocaleDateString();
const newRow = [currentDate, newData, "=[@Reading]-OFFSET([@Reading],-1,0)"];
table.addRow(-1, newRow);
// Return the difference between the newData and the previous entry.
const difference = Number.parseFloat(newData) - previousValue;
console.log(difference);
return difference.toString();
}
サンプル フロー: 日々の変更を報告する
サンプルの Power Automate フローを構築するには、次の手順に従います。
新しい スケジュールされたクラウド フローを作成します。
フローを 1 日ごとに繰り返すスケジュールを設定します。
[作成] を選択します。
実際のフローでは、データを取得するステップを追加します。 データは、別のブック、Teams アダプティブ カード、またはその他のソースから取得できます。 サンプルをテストするには、テスト番号を作成します。 アクションを追加し、[ 変数の初期化 ] アクションを選択します。 次の値を指定します。
- 名前: 入力
- 型: 整数
- 値: 190000
アクションを追加し、 Excel Online (Business) コネクタの [スクリプトの実行] アクションを 選択します。 アクションには次の値を使用します。
- 場所: OneDrive for Business
- ドキュメント ライブラリ: OneDrive
- ファイル: daily-readings.xlsx (ファイル ブラウザーから選択)
- スクリプト: 日単位の値を記録する
- newData: 入力 (動的コンテンツ)
スクリプトは、毎日の読み取り差を "result" という名前の動的コンテンツとして返します。 このサンプルでは、自分に情報を電子メールで送信できます。 アクションを追加し、 Outlook コネクタの [メールの送信 (V2)] アクション ( または任意のメール クライアント) を選択します。 アクションを完了するには、次の値を使用します。
- 宛先: メール アドレス
- 件名: 毎日の読み取り変更
- 本文: "昨日との違い:" 結果 (Excel からの動的コンテンツ)
フローを保存して試してください。フロー エディター ページの [テスト ] ボタンを使用します。 プロンプトが表示されたら、必ずアクセスを許可してください。
Office Scripts