我有一个文件夹,里面有许多相同格式的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中的数据写入新工作簿中的“测试”工作表。顺便说一句,如果它是一个精确的副本,即包括格式化等,而不是数据的单元格迭代,这将是最好的。我不确定这是否可能。
任何帮助都非常感谢。
谢谢
发布于 2014-03-07 07:25:28
可以使用active_wkbk、open_wkbk和close_wkbk命令在DataNitro中的多个工作簿之间切换。文档中有更多信息:https://datanitro.com/docs/workbook.html#multiple-workbooks
https://stackoverflow.com/questions/22229108
复制相似问题