【実際つくってみた】PowerAutomateDesktopで前日の売上データを出力し並び替え指定したファイル名で保存する

  • URLをコピーしました!
こんなことができるようになります

前日の売上データを出力し、Excelで顧客や担当ごとに並び替え、指定したファイル名で保存する

ただし、実際の基幹システムを使って売上データを出力することはできないので、今回はサイトから日付指定したExcelデータをダウンロードし、そのExcelを加工し、ファイル名を変更して保存するというフローをつくってます。

目次

つくったフローを説明します

フローでおこなったこと

STEP
「統計で見る日本」というサイトを開く
STEP
検索窓で出力したい日付を指定する

「全国統一価格品目の価格2023年8月」で検索させる

STEP
Excelをダウンロードする
STEP
Excelを開いて並び替える

2023年8月と2022年8月を比較し上昇率を加え並び替える

STEP
ファイル名を変更して保存する

「2023年8月価格の上昇率と上昇順位」というファイル名に変更して保存する

実際にどう動くか

カモネギ課長

まずは雰囲気を味わうネギ

つくったフローを確認

カモネギ課長

ヒャーーと思った人も大丈夫!ひとつずつ丁寧に解説していくネギ

フローを動かすためのアクション41個すべてを解説します

①現在の日時を取得

検索窓で日付を指定するための下準備。まず現在の日時を取得して、変数(CurrentTime)として保存する

②加算する日時

さきほど保存した現在の日時の変数(CurrentDateTime)を選択、今回は6か月前にしたいので、加算は「ー6」時間単位は「月」、計算された日時(ResultedDate)が生成されるので保存する

③datetimeをテキストに変換

画像に alt 属性が指定されていません。ファイル名: 3-1-1024x428.png

先ほど生成した変数、6か月前の日時(ResultedDate)を選択し、カスタム形式で●●●●年●月に変換し、生成された変数(FormattedDateTime)を保存する

④新しいChromeを起動する

新しくブラウザを開き、サイトを表示する。サイト内でボタンを押したりするので、ウィンドウは最大化にしておく

⑤Wait 6秒を待機する

ブラウザーが開く前に、次のフローが動かないように「Wait」で時間を置く。時間がかかる動作のあとは必ず「Wait」で間を入れるのが必要。

⑥Webページ上のテキストフィールドをフォーカス

サイトに表示している検索窓(テキストフィールド)を指定する作業。UI要素で、WEBページURLと表示される検索窓を赤枠で指定する。Ctrl+左クリックで追加する

⑦Webページ内のテキストフィールドに入力する

検索窓に、検索したいキーワード+検索したい日時を入れる作業。先ほど指定したUI要素をを使い、テキスト欄に検索したい文字を入れる。今回は固定のテキストと日時を入れる。日時は①~③でつくった変数を使う。

⑧ウィンドウのUI要素をクリック

検索窓のボタンを押すための作業。⑥と同じ要領で検索ボタンをUI要素に指定し、左クリックをさせる。

⑨Wait 3秒を待機する

⑩ウィンドウのUI要素をクリック

検索結果のExcelボタンを押す作業。⑥と同じ要領でExcelボタンをUI要素に指定し、左クリックをさせる。

⑪Wait 5秒を待機する

⑫Webブラウザを閉じる

動作が干渉しないように作業が終了した画面は閉じる。

⑬フォルダー内のファイルを取得

ダウンロードしたExcelファイルを開く作業。ここではフォルダはデスクトップ。ファイルフィルターはファイルに一致する文字がないので「*」を使用しファイルを取得。※常に同じファイル名なら*ではなくその文字を入れる。ファイルは変数(Files)に入る。変数(Files)の中で作成時間順に並び替えをする

⑭Excelの起動

保存した変数(Files)からExeclを起動する。取得した順に番号が割り振られるので指定する。

⑮ウィンドウの状態の設定

誤動作を起こさないように開いたExcelを最大化する。

⑯Wait 5秒を待機する

⑰ウィンドウにフォーカスする

どのウィンドウで作業をするか指定するため、開いたExcelをフォーカスさせる

⑱Wait 3秒を待機する

⑲キーの送信

Excelをキーで操作する作業。まずExcel全体を選択するため「Ctrl+A」をキー送信する。2個以上のキーを同時に押す場合は{Control}({A})のように()で囲む。キー入力の間隔の遅延は「100」くらいにしておくと送信エラーが起きにくい。

⑳Wait 5秒を待機する

㉑キーの送信

選択したデータをコピーするため「Ctrl+C」をキー送信する。

㉒Wait 5秒を待機する

㉓Excelの起動

今回上昇率を比較するため、あらかじめ計算式を入力したExcel(ExcelInstance2)を用意しておき、そのExcelを開く。

㉔ウィンドウの状態の設定

㉕Wait 5秒を待機する

㉖ウィンドウにフォーカスする

計算式が入ったExeclを操作するため、先ほどのExcel(ExcelInstance)からフォーカスするExecl(ExcelInstance2)を変更する。

㉗キーの送信

計算式が入ったExecelにデータを貼り付ける。

㉘Wait 5秒を待機する

㉙キーの送信

Excel内でキーを動かし、指定する場所にカーソルをあわせる。

㉚Wait 3秒を待機する

㉛キーの送信

Excelのツールバーで並び替えを選択する。

㉜ウィンドウのUI要素をクリック

ウィンドウのUI要素をクリックを使って、Execlの「最優先されるキー」をクリックする。

㉝Wait 3秒を待機する

㉞キーの送信

キーを動かし最優先されるキー、今回は「上昇率」を選ぶ

㉟Wait 3秒を待機する

㊱キーの送信

キーを動かし並び順を選択

㊲キーの送信

キーを動かし大きい順に変更

㊳キーの送信

ReturnキーでOKを押すとExeclで並び替えが行われる。

㊴Excelの保存

加工したExeclを、今回比較した日時を入れたファイル名で保存する。

㊵Excelを閉じる

1個目のExcel(ExcelInstance)を閉じる。

㊶Execlを閉じる

2個目のExcel(ExcelInstance2)を閉じる。

カモネギ課長

なんとなくは理解できたネギ?意外とアナログな方法で動かしているのがわかるネギ

もう一度動く様子を確認

前日の売上データを並び替えファイル名を変更して保存する方法

今回のフローを応用する

STEP
売上データ出力項目に前日の日付を入れる

現在の日時、加算する日時で取得し、テキストフィールドで入れる

STEP
Execlで出力しコピーをする

UI要素でボタンを押し、キー送信を使う

STEP
並び替え計算式を作ったExeclを用意しておき貼り付ける

もう1つのExcelの起動、キー送信を使い、Excelを操作する

STEP
加工データのファイル名に前日の日付を入れて保存する

ファイル名を指定して保存する

まとめ

会社によりいろいろな形で出力、加工、保存をしているかと思うので、このようなフロー例になってしまいましたが、「日付の取得」「項目に入力」「出力ボタンを押す」「ファイルの操作」がわかると使用できる範囲も広がるかなと思います。毎日の作業に自動化を是非取り入れてみてください。

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

目次