给多个工作簿的同名工作表追加行数据时报错,求大家帮忙看看。谢谢!
pywintypes.com_error: (-2147352567, '发生意外。', (0, None, None, None, 0, -2147352565), None)
代码如下:
from pathlib import Path
import xlwings as xw
app = xw.App(visible=False, add_book=False)
folder_path = Path('F:\practice\')
file_list = folder_path.glob('.xlsx')
new_data = [['12','asdce','Davis','1879430'],['13','movie','Funny','198*0744']]
for i in file_list:
workbook = app.books.open(i)
worksheet = workbook.sheets['供应商信息']
data = worksheet.range('A1').expand('table')
num = data.shape[0]
worksheet.range(num + 1, 1).value = new_data
workbook.save()
workbook.close()
app.quit()
workbook = app.books.open(i) 这句执行成功没有?workbook是不是空的
文件路径中反斜杠是转义字符,会对路径中一些特殊字符转义导致错误,写成Path("F:/practice/")
glob中要写成:*.xlsx,
代码这样修改就行了:
from pathlib import Path
import xlwings as xw
app = xw.App(visible=False, add_book=False)
folder_path = Path('F:/practice/')
file_list = folder_path.glob('*.xlsx')
#print(list(file_list))
new_data = [['12', 'asdce', 'Davis', '1879430'],
['13', 'movie', 'Funny', '198*0744']]
for i in file_list:
print(i)
workbook = app.books.open(i)
worksheet = workbook.sheets['客户']
data = worksheet.range('A1').expand('table')
num = data.shape[0]
worksheet.range(num + 1, 1).value = new_data
workbook.save()
workbook.close()
app.quit()
如对帮助,请点采纳。