UiPathのStudioXのアクティビティ「CSVにエクスポート」を紹介しています。
目次
やりたいこと
↓図のようなエクセルファイルがあるとします。
このデータをCSVファイルとして出力したいというのが今回のやりたいことです。
1.エクセルファイルを利用する設定をする
まず、エクセルの操作を行うためには絶対に必要な「Excelファイルを使用」というアクティビティをドラッグアンドドロップします。
そして、フォルダのアイコンより、利用するエクセルファイルを選択します。
この時、特にプロパティ等の設定は不要です。
2.「CSVにエクスポート」を追加する
Excel>範囲 より、CSVにエクスポート というアクティビティを追加します。
1.書き込み先ファイルを指定する
書き込み先ファイルには、CSVファイルの名称も含む、フルパスを指定しましょう!
以下のように、aaa.csvというファイルを出力するためには、
C:\main\60_HP\人事情報サンプル\aaa.csv
と入力します。フルパスですよ!
2.書き込み元を指定する
どのファイルの情報を書き込むか?というのを指定します。
ここでは、前述のフォルダより、「20220120.xlsx」を指定したいと思います。
書き込み元の右にある+から、Excel>Excel内で示す を選択します。
すると、対象のエクセルファイルが開かれます。
そして、データが入っている行の左上をクリックします。ここではA1です!
さいごに、リボンの中の、UiPath タブより、確認をクリックします。すごい親切。
確認ボタンをクリックすると、書き込み元に「[Excel]Sheet1!A1」と記載されました!
この[Excel]というのは、1.で定義した参照名が入ってます。
分かりやすく、人事情報エクセルとすると、以下のように変更されました。分かりやすい!
これで設定完了です!
実行すると、CSVファイルが作成されます!
その他注意点と調べたこと
Excelに数式があるケース
エクセルファイルの中に数式があっても、表示されている文字を取得し、CSV化してくれるようです。
例えば、以下のケースでは、年齢を表示するためにI列に「datedif」関数を使っています。
セルの表示設定がなされている場合
以下のように生年月日の表示形式を変更してみました。
実行された結果は以下です。yyyy/mm/dd形式はちょっと順番逆転しました。このあたり、注意ですね!
ヘッダー行の上や左に大きく間がある場合
どういうケースなんだと・・・。百聞は一見に如かずです。以下の図をご覧ください。
エクセルファイルのヘッダー行が宙に浮いています。
この時、CSVにエクスポートの書き込み元を「Sheet1!A1」から「Sheet1!E4」に変更するとうまくいきます。
データの入っている左上のセルを指定するだけで、右下までを一つの範囲とするのです。すごい・・・!やるやん・・・!
空白の入っていないCSVファイルが出来上がりました!
さいごに
CSV出力についてもアクティビティ一つできるのが便利ですね・・!
こちらもぜひ使ってみてください!
[…] Excelファイルを使用 […]
[…] CSVにエクスポート […]
[…] アクティビティ:Excelファイルを使用を追加します。ファイルパスの指定については、こちらをご覧ください。 […]