python获取excel,python读取excel并写入excel
在读取excel文件时,我自己设置了一部分直接从公式中获取单元格值。
但是用之前的读取方法读取时,返回值为空。
导入操作系统
导入xlrd
从xlutils.copy导入副本
file _ path=OS . path . ABS path(OS . path . dirname(_ _ file _ _)#获取当前文件目录
打印(文件路径)
root _ path=OS . path . dirname(file _ path)#获取文件父目录
Data_path=root_path \data #拼接数据文件夹地址
data _ file=data _ path \ API . xlsx #拼接excel文件地址
data=xlrd . open _ workbook(data _ file)#读取文件
Sheet=data.sheet_by_index(0) #切换到第一张工作表
def get_excel(行,列):
Excel单元格读取
:参数行:
:参数列:
:返回:
Rows=sheet.nrows #获取最大行数。
获取最大列数
Path _ name=sheet.cell _ value (row,col) #获取单元格值
返回行,列,路径名
之后查询发现普通读取无法直接读取有单元格的值。现在收养
openpyxl下的load_workbook模块
从openpyxl导入load_workbook
def get_xlrd(self,row,col):
WB=load _ workbook(self . data _ file,data_only=True)
ws=wb.worksheets[0]
返回ws.cell(行,列)。价值
openpyxl读取带公式的excel时可能存在这些问题。
它要么读作“无”,要么读作“公式本身”
WB=open pyxl . load _ workbook( Dai Kuan . xlsx ,data _ only=true) -读取为none。
# WB=open pyxl . load _ workbook( Dai Kuan . xlsx ,data _ only=false)-公式本身被读出。
解决方案:
公式是写在代码里的,所以读出来就是None。
手动编写公式,保存,然后用openpyxl读取。你可以读出公式的结果。
对于写好的公式/值,需要手动打开Excel,保存,然后用openpyxl读取,就可以读取公式了。
或者调用win32com.client导入调度模块。您可以通过运行下面的代码来读取数据/值,然后读取它。
从win32com.client导入调度
def just _ open(filename=文件名):
xlApp=Dispatch(Excel。应用程序’)
xlApp。可见=假
xlBook=xlApp。工作簿.打开(文件名)
xlBook。保存()
xlBook。关闭()
关于python在excel文件中用公式读取值的这篇文章到此结束。有关python读取excel公式值的更多信息,请搜索Python博客上以前的文章或继续浏览下面的相关文章。希望大家以后多多支持Python博客!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。