python无法读取excel文字_python读取excel保存公式无法读取

本文探讨了在使用Python处理Excel文件时,`data_only`参数如何影响公式显示和保存。当`data_only=True`,保存文件会丢失公式,仅保留计算结果或None;而`data_only=False`则保存公式不保存计算结果。解决方案是先以默认设置打开文件再保存,确保公式不被替换。这对于需要同时保留公式和计算结果的情况至关重要。
摘要由CSDN通过智能技术生成

原因:

以data_only=True或默认data_only=False打开会得到两种不同的结果,各自独立,即data_only=True状态下打开的,会发现公式结果为None(空值)或者一个计算好的常数,而不会看到它原本的公式是如何。

而data_only=False则只会显示公式而已。

因此,data_only=True状态下打开,如果最后用save()函数保存了,则原xlsx文件中,公式会被替换为常数结果或空值。

而data_only=False状态下打开,最后用save()函数保存了的话,原xlsx文件也会只剩下data_only=False的那套值(即公式),另一套(data_only=True)的值会丢失,

如想重新获得两套值,则仍旧需要用Excel程序打开该文件并保存。

解决方法:

使用如下代码打开在关闭一次,在使用data_only=True读出公式计算的值:from win32com.client import Dispatch

def just_open(filename):

xlApp = Dispatch(“Excel.Application”)

xlApp.Visible = False

xlBook = xlApp.Workbooks.Open(filename)

xlBook.Save()

xlBook.Close()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值