最近在学习 xlwings,参考学习的网址:https://www.jianshu.com/p/b534e0d465f7 写得很棒,学到了很多。
在新建sheet表单, 发现一个问题。
import xlwings as xw def creat_sheet(path, sheet=None, before=None): ‘‘‘ :param path: excel file path :param sheet: the name of which creating the sheet, could be None or the name of sheet :param before: the sheet before which the new sheet is added, could be int or the existing sheet name :return: ‘‘‘ try: wb = xw.Book(path) if isinstance(before, int): before = before + 1 sheet_obj = xw.sheets.add(name=sheet, before=before) # 这一行 !!! wb.save() return sheet_obj.name except Exception as e: raise e
上面的代码 在office excel里可以运行成功, 但是在wps excel里就会报错。
仔细查看了第一行的网址教程,发现没有什么问题。
在一个旁观者的惊讶声中,发现了原因! (果然旁观者清)
应该是 sheet_obj = wb.sheets.add(name=sheet, before=before) # 这一行 !!!
修改之后, Office和Wps 的excel 都可以运行成功。
我不知道原先的代码 为什么可以在office excel里运行成功。。。 office 和 wps 的底层处理不一样么??? (不懂呀~)
欢迎交流。
原文地址:https://www.cnblogs.com/Restaurant/p/11772493.html
时间: 2024-11-08 04:00:42