2

我有一个包含许多相同格式的 excel 文件的文件夹,其中包含多张工作表。目标是遍历文件夹并将每个笔记本中的一张工作表移动到一个新笔记本上,即从新工作簿中的每个 .xlsx 文件中结束一张工作表。我通常使用 DataNitro 进行 excel 工作,但遗憾的是,在复制数据时,您似乎无法为 CellRange 函数指定工作簿参数,所以我认为这是不可能的。我有代码可以在 VBA 中完成,但我的组织正在远离 VBA。我正在寻找使用 xlrd 和 xlutils 的解决方法。到目前为止,我将此作为其中一个文件的测试用例:

import os, xlrd, xlwt, xlutils
FilePath = r"Z:\Production_Data\WaveII\2-007\20130403\Central report\March'13\March"     #ENTER FILE PATH HERE
os.chdir(FilePath)
wb = xlrd.open_workbook("2nd Mar'13 CENTRAL REPORT..xls")
copy_sheet1 = wb.sheet_by_index(1)
new_book = xlwt.Workbook()
test = new_book.add_sheet('TEST')

但我不确定如何将 copy_sheet1 中的数据写入新工作簿中的“测试”表。顺便说一句,最好是精确的副本,即包括格式等,而不是数据的逐个单元格迭代。不确定这是否可能。

非常感谢任何帮助。

谢谢

4

1 回答 1

0

您可以使用 active_wkbk、open_wkbk 和 close_wkbk 命令在 DataNitro 中的多个工作簿之间切换。文档中有更多信息:https ://datanitro.com/docs/workbook.html#multiple-workbooks

于 2014-03-06T23:25:28.397 回答