レコーダーでUI操作を記録する
UIオートメーションのアクションを一から設定すると、UI要素の抽出が困難な場合があるため、その部分についてはレコーダーの機能を使用してフローを作成します。また、逆にレコーダーによる記録では抽出しづらい要素もあるため、前回のUI要素の抽出によるアクション設定も併用します。
今回のフローは前回のフローの実行結果であるシート上のカレンダーに対して、日曜日の列と土曜日の列のセルに背景色を付けます。
[1]あらかじめExcelで今月のカレンダー.xlsxを開く
「マウスでのUI操作フローを作成する」フローで使用したブックのシートを開いた状態にします。ウィンドウは最大化しておきます。
[2]新しいフローを作成する
タスクバーでPower Automate for Desktopを開きます(開いている場合は選択します)。Power Automate for Desktopのトップ画面から[+新しいフロー]をクリックして、適当な名前で新規のフローを作成します。
[3]日曜日列セル範囲を選択する
[UIオートメーション]アクショングループから[UI要素をウィンドウ内にドラッグアンドドロップアクションの配置]アクションを配置します。
![図:日曜日列を選択する設定](http://cz-cdn.shoeisha.jp/static/images/article/16695/16695_01.png)
設定ダイアログが開くので、[ドラッグするUI要素]のドロップダウンで、[UI要素の追加]ボタンをクリックします。Excelシートを開き、セルC4を選択(Ctrl+クリック)します。[ドロップ先のUI要素]のドロップダウンでも同様に[UI要素の追加]で、セルC10を追加します。
前回の「[Note]UI要素ペインとUI要素セレクター」で説明した[UI要素の追加]ボタンで事前にUI要素を追加しておき、ここではドロップダウンのツリーから選択する方法でも設定できます。
実行時には、範囲「C4:C10」を範囲選択する操作になります。
以下のように選択されていることを確認して保存します。
- ドラッグするUI要素:(Excelウィンドウ上のC4セル)
- ドロップ先のUI要素:(Excelウィンドウ上のC10セル)
[4]レコーダーを起動する
ツールバーからレコーダーを起動します。
![図:レコーダーの起動](http://cz-cdn.shoeisha.jp/static/images/article/16695/16695_02.png)
[5]レコーダーを開始する
Excelのウィンドウを最大化しておきます。[記録]ボタンでレコーディングを開始します。
![図:レコーダーの開始](http://cz-cdn.shoeisha.jp/static/images/article/16695/16695_03.png)
[6]マウスを操作して文字色のドロップダウンをクリック
リボンのフォントグループの[フォントの色]ドロップダウンにマウスポインターを置き、赤枠が表示されたらクリックします。
![図:文字色のドロップダウン](http://cz-cdn.shoeisha.jp/static/images/article/16695/16695_04.png)
[7]赤色を選択する
[標準の色]の左から2番目の赤色をクリックします。
![図:赤色を選択](http://cz-cdn.shoeisha.jp/static/images/article/16695/16695_05.png)
[8]レコーダーを終了する
不要なアクションが記録されてしまった場合、ゴミ箱アイコンで削除できます。[レコーダー]ウィンドウの[完了]ボタンをクリックしてレコーダーを終了します。
![図:追加されたフロー](http://cz-cdn.shoeisha.jp/static/images/article/16695/16695_06.png)
デザイナーに記録したアクションが追加されます。
先に配置したアクションより前になってしまった場合はデザイナー上でドラッグアンドドロップ(または、選択して右クリック―[下に移動])でアクションの順番を並べ替えます。
[9]土曜日列セル範囲を選択する
「[3]日曜日列セル範囲を選択する」と同様に、[UIオートメーション]アクショングループから[UI要素をウィンドウ内にドラッグアンドドロップアクションの配置]アクションを配置します。
設定ダイアログが開くので、[ドラッグするUI要素]のドロップダウンで、[UI要素の追加]ボタンをクリックします。セルI4で[Ctrl]+クリックで追加します。
[ドロップ先のUI要素]のドロップダウンでも、セルI10を選択([Ctrl]+クリック)して追加します。
以下のように選択されていることを確認して保存します。
- ドラッグするUI要素:(Excelウィンドウ上のI4セル)
- ドロップ先のUI要素:(Excelウィンドウ上のI10セル)
[10]レコーダーを起動する
ツールバーからレコーダーを起動します。
[11]レコーダーを開始する
Excelのウィンドウを最大化しておきます。[記録]ボタンでレコーディングを開始します。
[12]マウスを操作して文字色のドロップダウンをクリック
リボンのフォントグループの[フォントの色]ドロップダウンにマウスポインターを置き、赤枠が表示されたらクリックします。
[13]青色を選択する
[標準の色]の右から3番目の青色をクリックします。
![図:青色を選択](http://cz-cdn.shoeisha.jp/static/images/article/16695/16695_07.png)
[14]レコーダーを終了する
不要なアクションが記録されてしまった場合、ゴミ箱アイコンで削除できます。
[レコーダー]ウィンドウの[完了]ボタンをクリックしてレコーダーを終了します。
記録したアクションがデザイナーのフローに追加されます。
追加されたアクションがフローの下に追加されなかった場合には、デザイナー上でドラッグアンドドロップ(または、選択して右クリック―[上/下に移動])でアクションの順番を並べ替えます。
[15]作成したフローを実行する
確認するためにExcelのウィンドウ上で日曜日列や土曜日列の色が変更後の色になっている場合、黒色にしておきます。
また、Excelのウィンドウは最大化にして、リボンではホームタブが選択されている状態であることを確認します。
フローを実行します。
![図:文字色を変更する実行結果](http://cz-cdn.shoeisha.jp/static/images/article/16695/16695_08.png)
標準色グループが設定されている[ウィンドウのUI要素をクリック]アクションが2つありますが、実行すると1つ目は赤色が、2つ目は青色が選択されます。どこに違いがあるか確認のために、デザイナー上でこれらのアクションをダブルクリックして設定を開き[詳細]ノードを展開すると、[UI要素に対するマウスの相対位置][オフセットX][オフセットY]が異なっています。
レコーディングによる記録を使わずにこれらを設定することでも同じフローを作成できますが、最初からこれらを設定するのは簡単ではありません。
![図:標準色のクリックの詳細(赤色)](http://cz-cdn.shoeisha.jp/static/images/article/16695/16695_09.png)
![図:標準色のクリックの詳細(青色)](http://cz-cdn.shoeisha.jp/static/images/article/16695/16695_10.png)
次のフローでそのままExcelウィンドウは使用したいため[今月のカレンダー.xlsxを]を閉じずに保存します。フローは保存して終了します。