Csv → excel

excel
csv

#1

閲覧ありがとうございます。
現状、[.csv]形式をUiPath内で[.xlsx]形式に自動で変換することはできないか考えております。

他サイトでDLした[.csv]ファイルを、[Excel Application scope]で読み取るために、[.xlsx]ファイルに変更したいです。

ご教授頂けたら幸いです。


#2

実行するPCでExcelがインストールされていれば、という前提で。

Excel Application ScopeではCSVファイルも対象にできます。Excel Application Scopeで開くファイル名にCSVファイルを指定すればいいです。

但し、Excel側の挙動になりますが、シート名がCSVファイル名(から拡張子を取ったもの)になるので、Read Range等では、ファイル名が固定でない(変数に入っている等)であれば

IO.Path.GetFileNameWithoutExtension(ファイル名の変数)

としてやることで、シート名として使用できます。

それから、そのまま保存してもCSVにしかならないので、
・CSVファイルをExcel Application Scopeで開く
・シートの中身をRead Range等でDataTableとして読み出す(対象のRangeは空白の文字列を渡すとシート全体になります)
・CSVファイルのExcel Application Scopeはここで抜ける(AutoSaveは外したほうがいいかもしれません)
・保存したいExcelファイル名でExcel Application Scopeを開く、こちらはCreate New Fileのチェックをいれる
・Write Rangeで読み込んだDataTableの中身を書き出してから保存

という流れが、いちばん確実かつ簡単だと思います。