Apache POI表格无法使用pandas打开Excel报错Workbook contains no default style, apply openpyxl‘s default

Apache POI表格无法使用pandas打开Excel报错Workbook contains no default style, apply openpyxl‘s default打不开产生原因是因为 xlsx 文件是由 ApachePOI 创建 并不是 MicrosoftExc 创建 从文件属性里面程序名称是 ApachePOI 可以看到 解决办法一手动打开 excel 并重新保存或者另存为即可 然后就可以使用 pandas 打开了 解决办法二使用 win32com 加载 Excel 应用 然后重新保存即可 使用前先安装 pipinstallpy coding utf 8fromwin32co client

打不开产生原因

是因为xlsx文件是由Apache POI创建,并不是Microsoft Excel创建,从文件属性里面程序名称是Apache POI可以看到。

  • 解决办法一
    手动打开excel,并重新保存或者另存为即可,然后就可以使用pandas打开了。

  • 解决办法二
    使用win32com加载Excel应用,然后重新保存即可,使用前先安装:pip install pywin32

# coding=utf-8 from win32com import client xlApp = client.DispatchEx("Excel.Application") # 使用独立进程载入Excel xlApp.DisplayAlerts = False # 不提示警告 books = xlApp.Workbooks.Open(r"C:\Users\Administrator\Desktop\test.xlsx") # 保存excel,SaveAs()是另存为 books.Save() # 关闭excel books.Close() xlApp.Quit() 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/212743.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午7:22
下一篇 2026年3月18日 下午7:22


相关推荐

  • 面试官:说说什么是 Java 内存模型(JMM)?

    面试官:说说什么是 Java 内存模型(JMM)?本文禁止转载1.为什么要有内存模型?1.1.硬件内存架构1.2.缓存一致性问题1.3.处理器优化和指令重排序2.并发编程的问题3.Java内存模型3.1.Java运行时内存区域与硬件内存的关系3.2.Java线程与主内存的关系3.3.线程间通信4.有态度的总结在面试中,面试官经常喜欢问:『说说什么是Java内存模型(JMM)?』面试者内心狂喜,这题刚背过:『Java内存主要分为五大块:堆、方法区、虚拟机栈、本地方法栈、PC寄存器,ba.

    2022年6月7日
    40
  • OpenClaw Windows 原生安装部署与API聚合中转获取Claude apikey接入配置教程

    OpenClaw Windows 原生安装部署与API聚合中转获取Claude apikey接入配置教程

    2026年3月14日
    3
  • 下列变量名不符合python命名规范的是_下列选项中不符合Python语言变量命名规则的是…

    下列变量名不符合python命名规范的是_下列选项中不符合Python语言变量命名规则的是…【单选题】下列Python保留字中,不用于表示分支结构的是【单选题】以下程序的输出结果是:j=”foriin”12345″:j+=i+’,’print(j)【单选题】在读写文件之前,必须通过哪种方法创建文件对象【单选题】以下程序的输出结果是:s=”ls=[1,2,3,4]forlinls:s+=str(l)print(s)【单选题】Python…

    2022年6月13日
    94
  • HBase面试题「建议收藏」

    HBase面试题「建议收藏」0.Hbase是什么?(1)Hbase一个分布式的基于列式存储的数据库,基于Hadoop的hdfs存储,zookeeper进行管理。(2)Hbase适合存储半结构化或非结构化数据,对于数据结构字段不够确定或者杂乱无章很难按一个概念去抽取的数据。(3)Hbase为null的记录不会被存储.(4)基于的表包含rowkey,时间戳,和列族。新写入数据时,时间戳更新,同时可以查询到以前的版…

    2022年5月31日
    34
  • break和continue的作用和区别是什么?

    break和continue的作用和区别是什么?break和continue的作用和区别是什么?一、break和continue的作用二、break和continue的区别三、案例分析一、break和continue的作用break和continue都是用来控制循环结构的,主要是停止循环。二、break和continue的区别1、break用于跳出一个循环体或者完全结束一个循环,不仅可以结束其所在的循环,还可结束其外层循环。注意:(1)只能在循环体内和switch语句体内使用break;(2)不管是哪种循环,一旦在循环体中遇到break,系

    2022年6月12日
    43
  • python读取txt文件封装方法版「建议收藏」

    #-*-coding:utf-8-*-importnumpyasnpdefreadData(file,cols):file=open(file)lines=file.readlines()rows=len(lines)datamat=np.zeros((rows,cols))row=0forlineinlin…

    2022年4月13日
    46

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号