新手区 python3 的 openpyxl 模块,为啥修改后的表格通过 wb.save 方法保存不成功?

菜鸟求助 · 2019年07月19日 · 最后由 菜鸟求助 回复于 2019年07月24日 · 1569 次阅读

新手求助!!使用下面代码中类中的 save 方法,调用后,表格可以保存到,但是通过 change 方法修改的内容保存不到,这是为啥,也没有报什么错误信息,想问下是否可以这样保存表格呢,是不是写法有误

class Huidu(object):

    def __init__(self,dir):
        self.dir = dir

    def get_table(self):
        os.chdir(self.dir)
        wb = openpyxl.load_workbook(r'1111.xlsx')
        return wb

    def get_sheet(self,sheet_name):
        wb = self.get_table()
        return wb.get_sheet_by_name(sheet_name)


    def change(self, xuhao_find,date_start,date_end):
        ActivityConf = self.get_sheet(r'sheet1')
        xuhao = ActivityConf.max_row + 1
        for j in xuhao_find:
                for i in range(2, xuhao):
                         for z in range(12, 20):
                                if ActivityConf.cell(i, z).value != None:
                                    self.ChangeTime(
                                           ActivityConf.cell(i, z).value)


        return self

    def save(self):

      self.save('22222.xlsx')

huidu = Huidu(dir)
huidu.change(xuhao_find,date_start,date_end)
huidu.save()
共收到 7 条回复 时间 点赞

建议你改成这样试试

有报错吗贴出来看看。或者断点调试一下

没有找到对应的 wb.save

尘泥 回复

好的,我试试

Lmeng 回复

没有报错呢,就正常保存了 22222.xlsx ,但是修改后的数据没有保存到,还是之前的数据

TD 回复

是的,应该是我写错了

尘泥 回复

这样是可以的,谢谢😄

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册