在进行excel文件读取的时候,我自己设置了部分直接从公式获取单元格的值

但是用之前的读取方法进行读取的时候,返回值为空

import os

import xlrd

from xlutils.copy import copy

file_path = os.path.abspath(os.path.dirname(__file__)) # 获取当前文件目录

print(file_path)

root_path = os.path.dirname(file_path) # 获取文件上级目录

data_path = root_path + "\data" # 拼接data文件夹地址

data_file = data_path + "\api.xlsx" # 拼接excel文件地址

data = xlrd.open_workbook(data_file) # 读取文件

sheet = data.sheet_by_index(0) # 切换到第一个sheet

def get_excel(row, col):

"""

excel 单元格读取

:param row:

:param col:

:return:

"""

rows = sheet.nrows # 获取最大行号

cols = sheet.ncols # 获取最大列号

path_name = sheet.cell_value(row, col) # 获取单元格值

return rows,cols,path_name

查询之后发现普通的读取不能直接读取带单元格的值。现在采用

openpyxl下的load_workbook模块

from openpyxl import load_workbook

def get_xlrd(self,row,col):

wb = load_workbook(self.data_file, data_only=True)

ws = wb.worksheets[0]

return ws.cell(row,col).value

openpyxl 读取带公式的excel时,可能会存在这些问题

要么读出来是“None”,要么是“公式本身”

wb = openpyxl.load_workbook("daikuan.xlsx",data_only = True)-------读出来的是 none

#wb = openpyxl.load_workbook("daikuan.xlsx",data_only = False)------------读出来的是 公式本身

解决办法:

公式是代码写进去的,这样读出来就是None。

手动写入公式并保存,再用openpyxl读取,能读取到公式的结果。

代码写入的公式/值,需要手动打开Excel,并保存,再用openpyxl读取,就能读取到公式了。

或者调用win32com.client import Dispatch 模块。运行下面代码后再进行读取,就能读取到数据/值

from win32com.client import Dispatch

def just_open(filename=file_name):

xlApp = Dispatch("Excel.Application")

xlApp.Visible = False

xlBook = xlApp.Workbooks.Open(filename)

xlBook.Save()

xlBook.Close()

到此这篇关于Python读取excel文件中带公式的值的实现的文章就介绍到这了,更多相关Python读取excel公式的值内容请搜索python博客以前的文章或继续浏览下面的相关文章希望大家以后多多支持python博客!

python打开excel的函数-Python读取excel文件中带公式的值的实现相关推荐

  1. python公式_Python读取excel文件中带公式的值的实现

    在进行excel文件读取的时候,我自己设置了部分直接从公式获取单元格的值 但是用之前的读取方法进行读取的时候,返回值为空 import os import xlrd from xlutils.copy ...

  2. python读取html文件中的表格数据_Python 读取各类文件格式的文本信息 | doc,excel,html,mht...

    原标题:Python 读取各类文件格式的文本信息 | doc,excel,html,mht 众所周知,python最强大的地方在于,python社区汇总拥有丰富的第三方库,开源的特性,使得有越来越多的 ...

  3. office是python打开方式_使用Python操作Office——EXCEL

    首先介绍下office win32 com接口,这个是MS为自动化提供的操作接口,比如我们打开一个EXCEL文档,就可以在里面编辑VB脚本,实现我们自己的效果.对于这种一本万利的买卖,Python怎么 ...

  4. python怎么打开h5文件_python中利用h5py模块读取h5文件中的主键方法

    如下所示: import h5py import numpy as np #HDF5的写入: imgData = np.zeros((2,4)) f = h5py.File('HDF5_FILE.h5 ...

  5. python获取股指_用Python读取csv文件中的沪深300指数历史交易数据

    保存路径:D:\python\用Python读取csv文件中的沪深300指数历史交易数据 程序名称:readcsvhs300.py: 数据名称:沪深300指数历史交易数据.csv: 开发环境:Win7 ...

  6. python导入txt文件并绘图-Python实现读取txt文件中的数据并绘制出图形操作示例

    本文实例讲述了Python实现读取txt文件中的数据并绘制出图形操作.分享给大家供大家参考,具体如下: 下面的是某一文本文件中的数据. 6.1101,17.592 5.5277,9.1302 8.51 ...

  7. 用python读取txt文件中的数据并画各类图形展示_Python实现读取txt文件中的数据并绘制出图形操作示例...

    本文实例讲述了Python实现读取txt文件中的数据并绘制出图形操作.分享给大家供大家参考,具体如下: 下面的是某一文本文件中的数据. 6.1101,17.592 5.5277,9.1302 8.51 ...

  8. python csv数据处理生成图_Python 读取CSV文件数据并生成可视化图形

    CSV 文件数据读取并生成图形 CSV 文件格式 在文本文件中存储数据,最简单的方式就是将数据按照一定的格式存放在文件中,在读取文件时根据设计好的格式去将对应数据读取出来,这样就能很方便的进行简单数据 ...

  9. python读取字符串指定位置字符_python读取txt文件中特定位置字符的方法

    python读取txt文件中特定位置字符的方法 如下所示: # -*- coding:utf-8 -*- import sys reload(sys) sys.setdefaultencoding(' ...

最新文章

  1. mysql邮箱配置文件_SQL-数据库邮箱配置
  2. Oracle 12.2安装示例schema
  3. 高等数学、线性代数、概率论数理统计书籍推荐
  4. Ubuntu 18.04深度学习环境配置(CUDA9.0+CUDDN7.4+TensorFolw1.8)
  5. Oracle11g的安装及配置
  6. [转]关于数据库的并发性的一个解决方案
  7. swift4.1 系统学习十 函数
  8. CodeForces - 877C
  9. java常用快捷键 智能提示 及快捷键冲突
  10. python学习笔记之读取pdf文件库pdfminer(二)
  11. Spring Security系列之基本原理
  12. 锂电池注液工艺视觉定位方案指南
  13. Powershell-快速编辑模式和标准模式
  14. 并发与同步、信号量与管程、生产者消费者问题
  15. 十行 Python 代码就提取了韦小宝的身份证信息
  16. Google证书生成
  17. 一行命令,瞬间从“马赛克”到高清影像!
  18. javafx饼图特效
  19. 山东理工大学单元测试2重现
  20. React model

热门文章

  1. ubuntu下配置eclipse3.3
  2. redis有序集合(Zset)
  3. Struts2 XML配置详解
  4. linux连sql server
  5. 如何让SQLServer的 itemNum 字段 按照数字大小顺序排序
  6. Java处理正则验证手机号-详解
  7. HDU2866 Special Prime
  8. [NOI2007]货币兑换Cash(DP+动态凸包)
  9. 第一次做安卓项目使用的开源框架列表
  10. angular入门-ngOptions