.csvファイルのディレクトリを.xlsまたは.xlsx形式にすばやく変換する方法を探しています(どちらかまたは両方を実行できれば、Niceになります)。
これを行う簡単な方法はありますか、それともサードパーティのプログラムをインストールする必要がありますか?
あなたが好きで、Python(何らかの理由で)を持っている)と仮定すると、次のスクリプトを使用できます。
import os
import glob
import csv
import xlwt # from http://www.python-Excel.org/
for csvfile in glob.glob(os.path.join('.', '*.csv')):
wb = xlwt.Workbook()
ws = wb.add_sheet('data')
with open(csvfile, 'rb') as f:
reader = csv.reader(f)
for r, row in enumerate(reader):
for c, val in enumerate(row):
ws.write(r, c, val)
wb.save(csvfile + '.xls')
すべてのCSVファイルがあるディレクトリで実行すると、すべてが変換され、「。xls」が最後にスラップされます。
最大約1 MrowsをサポートするExcel 2007+(xlsxファイル)の場合:
import os
import glob
import csv
import openpyxl # from https://pythonhosted.org/openpyxl/ or PyPI (e.g. via pip)
for csvfile in glob.glob(os.path.join('.', '*.csv')):
wb = openpyxl.Workbook()
ws = wb.active
with open(csvfile, 'rb') as f:
reader = csv.reader(f)
for r, row in enumerate(reader, start=1):
for c, val in enumerate(row, start=1):
ws.cell(row=r, column=c).value = val
wb.save(csvfile + '.xlsx')
ここ はおそらくそれを行うPerlスクリプトですが、すでにExcelに組み込まれている何かを行うのは大変な作業のようです。
あなたの質問には、言い残しがたくさんあります。
CVSファイルが次のようなディレクトリ構造にあると仮定します
c:\randompath\CSV\
a.csv
b.csv
c.csv
:
:
z.csv
そしてあなたは終わりにしたい
c:\randompath\XLS\
a.xls
b.xls
c.xls
:
:
z.xls
事前の作業とクリーンアップの作業の比率に応じて、3つのルートが考えられます。
これらのことを行うためのコードはまだ作成していないことに注意してください(まだ)出発点のアイデアを提供しています。多分あなたがあなたが欲しいものについてより詳細を与えることができれば、私または別のフォーラムのメンバーからのアプローチを処理する方法についてより詳細な説明を得ることができます。
Windowsの場合CoolUtils "Total CSV Converter"コマンドラインバージョンは、JSON、Access、DBF、XMLおよびSQLを含む多くの出力形式をサポートしますそしてたったの$ 40。サブディレクトリの再帰、元のCSVファイルの削除、すべてのファイルの1つのドキュメントへの結合などが可能です。
http://www.coolutils.com/TotalCSVConverter
CSVConverter.exe <source> <destination> <options>
"Advanced CSV Converter"($ 40-200)は、Excelをインストールしなくてもすばやく実行できるポータブルEXEです。
http://www.dbf2002.com/csv-converter/commandline.html
"c:\Program Files\CSV Converter\csvcnv.exe" c:\base\*.csv c:\exports\ /TOXLSX /SRCHDR
SoftInterfaceの「Convert XLS」はExcelを使用できますが(必須ではありません)、より高価ですが($ 500 +)、より多くの形式をサポートし、より多くのオプションがあります。
http://www.softinterface.com/Convert-XLS/Convert-XLS.htm
"c:\Program Files (x86)\Softinterface, Inc\Convert XLS\ConvertXLS.exe" /V /S"c:\base\*.csv" /T"c:\exports\*.xlsx" /F6 /C51 /M2
「Gnumeric」は、直接変換を実行できるオープンソースのスプレッドシートプログラムですが、Windowsでは2014年8月に廃止されました。
ssconvert file.csv file.xlsx
Pythonがインストールされている場合、 "csv2odf"はオープンソースのオプションであり、テンプレート化されたアプローチを使用してodsを生成します、odt、html、xlsx、またはdocxファイル。
http://sourceforge.net/projects/csv2odf/
csv2odf data.csv template.odt output.xlsx
Node 8+ and bash:
npm install -g pguardiario/csv2xlsx
for file in *.csv; do csv2xlsx "$file"; done