python对带有宏(VBA)的excel文件(xlsm)追加数据

该博客介绍了如何使用openpyxl库读取xlsm文件,并保留VBA宏。通过结合pandas,读取数据并写入新的工作簿,特别强调了数据写入的方法。最后,提醒用户在保存后需手动用Excel打开并保存以确保数据完整。
摘要由CSDN通过智能技术生成
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打开再保存。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值