【PowerAutomate】OneNoteに日付・曜日で1か月分のページを自動作成してみた

【PowerAutomate】OneNoteに日付・曜日で1か月分のページを自動作成してみた ICT

OneNoteで毎朝の連絡を行う職場が増えてきました。
セクションを月、ページを日のタイトルにしています。

年間計画表、予定表、学校であれば職朝連絡といったところです。
ただ毎月この31ページを作成するのが大変だということで。
Power Automateによる1か月分のページの自動作成をやってみました。

※この記事は2022年時点での内容です。
Microsoftの仕様変更のため主にTitleなどの指定が機能しない可能性があります。

前提・準備

・Office 365 Businessプランを利用。
・OneNoteで年間計画表という名前で作成しておく。
・4月という名前のセクションを作成しておく。
※これは記事作成時点の情報です。
※これは筆者がやったみた記録であり、同じ方法を推奨しているわけではありません。

フロー作成

① 作成

作成を選びます。

② フローの作成

インスタントクラウドフローを選びます。

③ フロー名

フロー名(例:OneNoteに日付・曜日で自動作成)を入力します。
トリガーする方法は「手動でフローをトリガーします」。

④ フローの作成

フローの作成画面になりました。
「新しいステップ」でフローを追加します。

⑤ 変数を初期化するアクションを追加する

検索欄に「変数を初期化」と入力すると、下部のアクション一覧に表示されます。
「変数を初期化する」を選択します。

⑥ 初期化の内容を入力する

名前:day(日、1日のこと)
種類:整数
値:1

⑦ 変数dateを追加する

同様の手順で変数を追加します。
名前:date(何月何日の日づけのこと)
種類:整数 → 文字列
値:2023/04/ (x)day
何月何日の何日の部分には先ほどの変数dayをあてはめます。
右のメニューから「動的なコンテンツ > (x)day 」を選びます。

⑧ Do untilアクションを追加する。

今度は変数ではなくDo untilの繰り返しのためのアクションを追加します。
左の値には(x)dayを選びます。
これにより(x)dayが最初の1から31になるまで作業を繰り返す設定になります。
続いて繰り返す内容を追加していきます。

変数の設定アクションを追加する

アクションを追加するのはDo until内であることを確認します。
名前:date
値:2023/04/ (x)day
これにより1から31まで数字が変わるたび、日の部分にその数字が入ります。

⑩ セクションにページ作成アクションを追加する

追加するのは引き続きDo until内であることを確認します。
検索欄に「セクションにページを作成」と入力すると、下部のアクション一覧に表示されます。
セクションにページ作成アクションを追加します。

⑪ OneNoteを指定する

自分が所有しているOneNoteを選ぶことができます。
ノートブックキー:年間計画表(自分のOneNote)
ノートブックのセクション:4月

⑫ ページコンテンツではコードビューに変更

ノートブックキーとセクションを指定後。
ページコンテンツについては、右端のコードビューのアイコンを押します。

⑬ ページコンテンツにHTMLを記述。何日の部分。

ページコンテンツには以下をコピー&ペーストします。

※この記事は2022年時点での内容です。
Microsoftの仕様変更のため主にTitleなどの指定が機能しない可能性があります。

<html lang="ja-JP">
	<head>
		<title> 日( )</title>
		<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
		<meta name="created" content="2023-04-01T12:00:00.0000000" />
	</head>
	<body data-absolute-enabled="true" style="font-family:Yu Gothic;font-size:11pt" />
</html>

また、何日(曜日)の何日にあたる

<title> 日( )</title>


 部分には変数dayをあてはめます。
右のメニューから「動的なコンテンツ > (x)day 」を選びます。

⑭ 曜日の部分

続いて曜日の説明です。

何日(曜日)の曜日にあたる
(x)day日( 
 部分には動的コンテンツではなく「式」をあてはめます。
式を選んだ後、以下の内容をコピー&ペーストしてください。

createArray('日','月','火','水','木','金','土')[dayOfWeek(variables('date'))]

⑮ 何日・曜日の確認

何日の部分には(x)day
曜日の部分にはcreateArray(..)が入っています。

⑯ 変数の値を増やす

最後に変数の値を増やすアクションを追加します。
名前:day
値:1
これによりDo until内でdayに毎回1を足しながら作業を繰り返すようになります。

⑰ テスト

保存をすると、メニュー右上のテストから実行することができます。
手動を選んでテスト→続行。
「フローの実行」により実際の動作がはじまります。以上です。

お読みいただきありがとうございます。

コメント

  1. ゆか より:

    7番と9番で、
    有効な整数を入力してくださいとエラーが出てしまいます。対処法はありますか?

  2. ヨシ より:

    上記の方と同じように、何度やってもエラーになってしまいます。
    半角にはなっているのですが、他に何かありますか

    • しむあん しむあん より:

      質問いただきありがとうございます。

      ご迷惑をおかけして申し訳ございません。
      「⑦ 変数dateを追加する」におきまして記載の間違いがございました。
      種類を整数ではなく「文字列」に指定します。
      これにより、2023/04/Xという文字の代入をすることができます。
      文字を整数に入れようとしていたため、有効な整数のエラーが発生されていた模様です。

      お手数をおかけしまして、大変申し訳ございません。

タイトルとURLをコピーしました