使用python的xlutils.copy模塊,進行文件數據寫入,保存之後打不開
Excel文件後綴是xlsx,進行操作之後,打不開文件;(解決:把後綴xlsx改成xls就可以打開;或者文件一開始的後綴就是xls)
import xlrd
from xlutils.copy import copy
file = 'D:/hunter_/demo3.xlsx' # 文件路徑
data = xlrd.open_workbook(file) # 定義一個excel文件的workbook對象
print('data的類型爲:', type(data))
data_copy = copy(data) # 獲取data的copy對象
print('data的copy對象類型爲:', type(data_copy))
sheet_copy = data_copy.get_sheet(0) # 從data_copy對象中獲取第一個sheet對象
sheet_copy.write(2, 11, '測試寫入內容') # 向sheet的某個單元格寫入值
data_copy.save('demo3.xlsx') # 寫入完成後保存data的copy對象
改成xls文件能正常打開
注意:
xlrd模塊0.8版本後不支持以xlsx爲後綴名文件,所以使用這個方法的時候,excel要用xls格式的,不然會導致保存的文件無法打開
xlutils最新的2.0版本只能支持copy xls格式的excel文件,如果copy的是xlsx再保存,那麼新生成的文件將無法打開。
原文出處:https://www.cnblogs.com/hemingwei/p/11585799.html