LacotasuBlog

ポンコツ社内SEの備忘録

Power Automate Desktop RPA

[第31回] CSV を Excel で保存するフロー【ゼロ落ちさせない】

投稿日:2021年12月2日 更新日:

全体概要

・フローが長くなったのでメモ帳の処理とExcelの処理にサブフローで分けた。
◆メモ帳の処理
①csvファイルをメモ帳で開く
②念のため①で開いたメモ帳の入力部分にフォーカス
③タブを入力→Shift押しながら左矢印でそのタブを選択→切り取り→Ctrl+Hで置換Window開く
④置換ウィンドウの検索する文字列に「,」カンマを入力
⑤置換後の文字列にフォーカス
⑥Ctrl+Aですべて選択後→Ctrl+Vで③で切り取ったTabを貼り付け
⑦すべて置換を押す
⑧Escキーを押して置換ウィンドウを閉じる
⑨年のためメモ帳にフォーカス
⑩Ctrl+Aですべて選択→Ctrl+Cでコピー→Alt+F4でメモ帳を終わらせる
⑪保存するかしないかのダイアログでNを押して保存しないを選択

◆Excelの処理
⑫Excelを新規で起動
⑬念の為A1セルを選択
⑭Ctrl+Aで全てのセルを選択→Ctrl+1でセルの書式設定を開く
⑮セルの書式設定画面の「文字列」をダブルクリックして選択
⑯念の為A1セルを選択
⑰◆メモ帳の処理⑩でコピーしたカンマがタブに置換されてるデータを貼り付け
⑱⑲⑳Excelファイル作成前に念の為同じファイルを削除しておく(ファイルがなければそのまま次へ)
㉑Excelを保存して閉じる

※WinActor版はこちら

作成した変数(定数)

変換元のCSVと変換後のExcelのパスの定数を作成した

作成したフロー(Main)

作成したフロー(メモ帳の処理)

作成したフロー(Excelの処理)

作成されたUI要素

↓ メモ帳で編集した瞬間、Windowの名前が変わってしまう(*が付く)ので含むにした。

それでは、上から行きます。

①アプリケーションの実行

②ウィンドウ内のテキストフィールドをフォーカス

③キーの送信

{Tab}{Shift}({Left}){Control}({X}){Control}({H})

④ウィンドウ内のテキストフィールドに入力する

↑ 見えにくいですが、「,」が入力されています。

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

⑥キーの送信

{Control}({A}){Control}({V})

⑦ウィンドウ内のボタンを押す

⑧キー送信

{Escape}

⑨ウィンドウ内のテキストフィールドをフォーカス

⑩キー送信

{Control}({A}){Control}({C}){Alt}({F4})

⑪ウィンドウ内のボタンを押す

⑫Excelの起動

⑬Excelワークシート内のセルを選択

⑭キーの送信

{Control}({A}){Control}({D1})

⑮ウィンドウのUI要素をクリックする

⑯Excelワークシート内のセルを選択

⑰キーの送信

⑱⑲⑳ ブロックエラー発生時・ファイルの削除

㉑Excelを閉じる

▶で実行してみる

ゼロ落ちしないでExcelに変換できました!

-Power Automate Desktop, RPA

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

[第11回] 【基本操作】レコーダーを使用せずExcelで並び替えを実行する①【特定の1列でソート】

今回も前回と同じサンプルデータを用意してますので、よかったらお使いください。 とりあえず最終形はこうした ↓ それでは上から見ていきますね。 Excelの起動 ウィンドウを待機する 最終形は ↑ こう ...

WinActorでおススメの初期処理、変数、定数、後処理

失敗する確率が10%ぐらいのシナリオがあったとします。そのシナリオを2回実行すると、2回失敗する確率は1%、3回実行すると、3回とも失敗する確率は0.1%になります。 ということで、今回は、タスクスケ ...

no image

Excel操作(列削除)が1列ずつしか削除できないので、複数同時に削除できるようにする方法

修正方法 これのスクリプトを修正 ↓スクリプトの「指定された列を削除する」のところを以下の赤字のように修正 ' ====指定されたファイルを開く============================ ...

[第30回]【超初級】例外処理・エラー処理について【Try Catch】

power automate desktopを勉強していると、実行時に、↓ こんな感じのエラーが表示されると思います。 ↑ エラー内容は今回はどうでもいいので塗りつぶしています。これを例外とかエラーと ...

no image

【Winactor】指定した文字列から、指定した文字に囲まれた文字列を抜き出すスクリプト

例えば、■あいうえお▲かきくけこ◆さしすせそ◆たちつてと●という文字列があったとして、「さしすせそ」を返したいとする ' WinActorからstrを受け取る' 例:WinActorの変数「str」を ...