如何将文件夹中的所有.csv文件转换为具有多个工作表选项卡的单个.xlsx文件(每个.csv 1个)?

时间:2014-09-05 07:00:15

标签: python excel csv

我有一个包含20个左右.csv文件的文件夹。我想创建一个包含多个工作表选项卡的单个.xlsx文件(excel文件)(每个.csv为1)。

有人可以推荐一个简单的脚本来执行此操作,用户只需要指定两件事:带有.csv文件的文件夹&新.xlsx文件的路径?

我在这个帖子中发现了同样的问题但没有答案我能理解:

https://superuser.com/questions/742454/how-to-convert-many-csv-files-into-1-xlsx-file-with-multiple-tabs?rq=1

全部谢谢,

2 个答案:

答案 0 :(得分:6)

以下代码将文件夹名称(包含多个csv文件)作为输入,并将输出创建为具有多个工作表的单个xls文件

import xlwt, csv, os

csv_folder = "Output/"

book = xlwt.Workbook()
for fil in os.listdir(csv_folder):
    sheet = book.add_sheet(fil[:-4])
    with open(csv_folder + fil) as filname:
        reader = csv.reader(filname)
        i = 0
        for row in reader:
            for j, each in enumerate(row):
                sheet.write(i, j, each)
            i += 1

book.save("Output.xls")

答案 1 :(得分:1)

我看到你用python标记了这个问题,但是一个选项是使用Power Query(来自Microsoft的免费Excel加载项),它有一个"获取外部数据" - > "来自文件夹"选项。