python对带有宏(VBA)的excel文件(xlsm)追加数据
python对带有宏(VBA)的excel文件(xlsm)追加数据,python在xlsm文件的追加操作
·
def copyData(filename,saveFilename):
'''
:filename:模板文件路径
:saveFilename:导出文件路径
导出后需要人为打开并保存一遍
'''
wb = load_workbook(filename,data_only=False,keep_vba=True)
ws = wb["任务明细表"]
data = pd.read_excel('./orders.xlsx',header=None)
for i in range(22):
col = 9 + i
for j in tqdm.tqdm(range(len(data))):
ws.cell(j + 1, col, data.iat[j,i])
wb.save(saveFilename)
要想读取xlsm文件并且保留就一定要用openpyxl来读取,读取之后选定工作簿,我这里采用了pandas来对要写入xlsm的数据进行读取,因为文档被写入数据为22列,所以range那我写了22,如果不清楚可以获取data的colums再用len+1得到,data.iat[x,y]类似于直角坐标系的取值方式,
ws.cell(行数,列数,数据)用这样的方式把数据写入进去,写入完成用wb.save保存,保存完记得手动用excel打开再保存。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)