import xlrd
from xlutils.copy import copy
def copy_excel(target_file):
"""
利用 xlutils.copy 拷贝一份 Excel.
xlutils.copy 可以实现以下功能:
1. 读取表格信息的功能
2. 在表格中写入数据的功能
相当于 xlrd 和 xlwt 的结合体.
但请注意, xlrd 读取的 xlsx 具有完整的读取功能, 但保存为新表格文件时, 必须以 '.xls' 格
式保存, 因为 xlwt 只支持 '.xls' 格式的保存.
"""
read_file = 'sample.xlsx'
workbook = xlrd.open_workbook(read_file, formatting_info=False)
"""
formatting_info 参数表示保留原数据的样式 (如原表格的标黄单元格, 加粗字体等信息的保留),
默认值为 False (不保留).
另外, formatting_info=True 不保证能完美保留, 部分样式可能丢失. (个人遇到过的情况是新
建 sheet 操作会导致原表格标黄的单元格的背景色丢失)
"""
new_book = copy(workbook)
sheet = workbook.get_sheet(0)
sheet.write(0, 0, 'new abc')
new_output_path = 'result2.xls'
new_book.save(new_output_path)