Power Automate Desktop(PAD)で、CSVファイルに書き込む方法について解説します。
「CSVファイルに書き込む」アクションを追加
PADでCSVファイルを読み込むには、「CSV ファイルに書き込む」アクションを使います。
PADを開くと画面左側にアクションが一覧で表示されていますので、このなかから「ファイル」カテゴリ内にある該当アクションをドラッグアンドドロップで真ん中の白いエリアに配置します。
すると、以下のようなダイアログが表示されます。
書き込む変数
「書き込む変数」に設定できるのは、以下の3つです。
- データ テーブル
- データ行の変数
- リスト変数
簡単に言うと、「要素」として区切られた変数のみCSVファイルにすることができます。
ファイル パス
「ファイルパス」には、書き込み先のファイルを指定します。
既存のファイル名を指定すると、既存のファイルに上書き/追記でき、新規のファイル名を指定すると新しくCSVファイルが作成されます。
ファイルの上書き/追記設定
ファイルに内容を上書きするか、追記するかの設定は詳細設定から行います。「CSVファイルに書き込む」アクションの下のほうにある「詳細」を押します。
詳細のなかに「ファイルが存在する場合」というメニューがありますので、ここで「既存の内容を上書きする」か「内容を追加する」を選択します。
エンコード
CSVファイルに書き込む際のエンコードを選択します。デフォルトではUTF-8になっています。
最近のCSVのファイルの多くはUTF-8であることが多いので、そのままで問題ないかと思います。
SJISとして作成したい場合
SJISとして作成したい場合は、「システムの規定値」を選択します。
フローを実行してみる
以下の設定で、「CSVファイルに書き込む」を実行してみます。
画面上部にある再生ボタンを押して実行します。
CSVファイルが新規作成され、データテーブル変数の内容が記載されていることが確認できました。
TSVファイルやセミコロン区切りファイルを作成したい場合
TSVファイル(タブ区切り)や、セミコロン区切りファイルを作成したい場合は、「CSVファイルに書き込む」アクションの詳細設定から行います。
アクション下部にある「詳細」を押します。
「区切り記号」のプルダウンから、区切り記号にしたいテキストを選択します。
カスタム列区切り記号
コンマ、セミコロン、タブ以外を区切り記号としたい場合は、「カスタム列区切り記号」を使用します。
「カスタム列区切り記号を使用します」をオンにします。
すると、「カスタム列区切り記号」という項目が表示されますので、区切り記号としたい文字を入力します。
スペース区切りファイルは作成できなかった
空文字「%’ ‘%」を設定しても、実行時に「指定されたカスタム区切り記号は空であるか、または改行を含んでいます」というエラーが発生し、スペース区切りファイルを作成することはできませんでした。
活用事例:スクレイピング結果をCSVファイルにする
Webページのスクレイピング結果を、CSVファイルすることも可能です。
試しに、FreeCodeCampの、HTMLテーブルサンプルをスクレイピングしてみます。
PADのフローは以下のようになります。
これを実行すると、CSVファイルにスクレイピング結果がセットされていることが確認できました。
PADでスクレイピングをする方法についての詳細は、以下記事をご確認ください。
CSVファイルの作成に失敗する場合
CSVファイルの作成時に、エラーが発生するときの対処法について解説します。
エクスポートする変数は、データテーブル、データ行、またはリストである必要があります
上記のようなエラーが発生している場合、エラーメッセージの通り、CSVに書き込む対象の変数の中身の形式が指定されたものになっていません。
CSVファイルにする際には、データテーブル(二次元配列)やリスト(一次元配列)といった、要素で区切られた変数である必要があります。
「CSVファイルに書き込む」アクションの「書き込む変数」に設定している変数の型を再度確認し、修正が必要です。
まとめ
今回は、Power Automate Desktop(PAD)で、CSVファイルに書き込む方法について解説しました。
CSVファイルを読み込む方法については、以下記事をご参照ください。
当ブログでは、Power Automate、Power Automate Desktopに関する記事を他にも投稿しています。もし、「このようなことが知りたい」「こんなフローの作り方が知りたい」等ございましたら、問い合わせやコメントからお気軽にご連絡ください。
参考:Microsoft Power Automate > CSV ファイルに書き込みます
コメント