見出し画像

Power Automate for desktop×FILTER関数で、Excelシートをファイルに分割してみたハナシ

もくもく手作業の話を聞くと、PADならどうやるのかな?って考えるのが楽しい🤭

【事前準備】

今回用意したファイルはこんな感じ。

テストデータの生成は、こちらを使わせていただいています🙏

流れとしては、システムなどからダウンロードした全データを「元データ」シートに(*゚▽゚)ノ□ペタッ とする。

県名のシートは、元データからFILTER関数で抽出したい県名のデータが表示されるようにしておく。

これをシートごとに、ファイルに分けるという流れ。

① Excelの準備

使用するアクションは「Excelの起動」。

今回はExcelをふたつ開くので、わかりやすいように変数名を「ExcelInstance_data」にしておく。

Excelを起動したらウィンドウを最大化。
使用するアクションは「ウィンドウの状態の設定」。

シート分操作を繰り返したいので、ワークシートを取得します。
使用するアクションは「すべてのExcelワークシートの取得」。

② 「貼付用」シート以外のシートをブックにする

シート分繰り返しをします。
使用するアクションは「For each」。

繰り返しの中で、変数「CurrentItem」に順番にシート名が入ります。

だけど、「貼付用」シートだったら何もしなくていい。
使用するアクションは「If」。

もし変数「CurrentItem」の値が「貼付用」だったら、次のシートの処理をする。
使用するアクションは「次のループ」。

このアクションは、設定不要。

操作対象のシートをアクディブにする。
使用するアクションは「アクティブなExcelワークシートの設定」。

シートの値が入力されているセルをすべてコピーする。
使用するアクションは「Excelワークシートからセルをコピー」。

コピーしたデータを別のブックに貼り付ける。
使用するアクションは「Excelの起動」。

変数名を「ExcelInstance_kenmei」としました。

起動したブックにコピーしたデータをペースト。
使用するアクションは「Excelワークシートにセルを貼り付け」。

ホントはここで、値のみとか選べたらよかったんだけど~💦
それはまだできなかった😢

なので、コピーしてから値貼付けをする。
使用するアクションは「Excelワークシートからセルをコピー」。

Applicationキー+Vを送信。

キー入力の間隔の遅延を100ミリ秒に。

このままだと範囲指定されたまんまで気持ち悪いので、Ctrl+Homeを送信。

シート名(県名)をファイル名にして名前を付けて保存。
使用するアクションは「Excelを閉じる」。

③ Excelを閉じる

繰り返しが終わったら、元データのファイルを閉じる。
使用するアクションは「Excelを閉じる」。

④ 実行

全体はこんな感じ。

実行します(。・Α・)σポチッ

おぉ、なんと かいがいしい🤤
できました!👏✨

中はこんな感じ。

ちゃんと値貼付けになってます🥳

⑤ 所感

意外と貼付けの種類って選択できなかったんだな~😳
けどExcelはショートカットキーがいっぱるあるので、さほど困らない🤤

こういう作業、きっと結構多いと思う。
そういえば前の派遣先でもやってたな。

365ならFILTER関数が使えるので、ぜひ活用してもらいたい✨
せっかく365なのに、FILTER関数使わないなんてもったいない!!

ここからメール送信に繋げることもできる。
Teamsで送信したいときは…今はまだPower Automateと連携しかないかな🤔

有料版ならそのうちTeamsの操作もできるようになっちゃったりするんだろうか。
あー!チャネルのメールアドレスが使える環境なら投稿できるか😳
すごいな、PADの期待値半端ないわ🤤


事務員が少しの背伸びでできる効率化を目指す🌈✨ 自分の好きなものを、楽しく発信していきたいです! いただいたサポートは学習費にあてさせていただきます🥰