Python读取excel文件中带公式的值的实现
在进行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如何读取和写入EXCEL里面的数据
好久没写了,今天来说说python读取excel的常见方法.首先需要用到xlrd模块,pip install xlrd 安装模块. 首先打开excel文件: xl = xlrd.open_workbook(r'D:\file\data.xlsx') 传文件路径 通过索引获取要操作的工作表 table = xl.sheets()[0] 有些人不知道啥是工作表,下图这个: 获取第一行的内容,索引从0开始 row = table.row_values(0) 获取第一列的整列的内容 col = tabl
-
python读取Excel实例详解
本文实例为大家分享了python读取Excel实例的具体代码,供大家参考,具体内容如下 1.操作步骤: (1)安装python官方Excel库-->xlrd (2)获取Excel文件位置并读取 (3)读取sheet (4)读取指定rows和cols内容 2.示例代码: # -*- coding: utf-8 -*- import xlrd from datetime import date,datetime def read_excel(): #文件位置 ExcelFile=xlrd.open_
-
python实现读取excel文件中所有sheet操作示例
本文实例讲述了python实现读取excel文件中所有sheet操作.分享给大家供大家参考,具体如下: 表格是这样的 实现把此文件所有sheet中 标识为1 的行,取出来,存入一个字典.所有行组成一个列表. # -*- coding: utf-8 -*- from openpyxl import load_workbook def get_data_from_excel(excel_dir):#读取excel,取出所有sheet要执行的接口信息,返回列表 work_book = load_wor
-
Python读取Json字典写入Excel表格的方法
需求: 因需要将一json文件中大量的信息填入一固定格式的Excel表格,单纯的复制粘贴肯定也能完成,但是想偷懒一下,于是借助Python解决问题. 环境: Windows7 +Python2.7 +Xlwt 具体分析: 原始文件为json列表,列表中有多个字典,生成Excel文件需要将列表中的字典的键值按键对应排列,也就是说,所有为"XX"的键对应的值写在一列,且每个字典中的不同键的键值保证在同一行. 解决思路是,读取json文件,然后遍历字典的键和值,读完第一个字典并写入Excel
-
Python从Excel中读取日期一列的方法
如下所示: import xlrd import datetime file=u"伏特加.xls"#注意读中文文件名稍微处理一下 data=xlrd.open_workbook(file) table = data.sheet_by_index(0)#按照索引读Excel文件 colContent=table.col_values(1)#读某一列,日期在第二列 nrows=table.nrows #行数 print nrows ncols = table.ncols#列数 print
-
Python xlrd读取excel日期类型的2种方法
有个excle表格需要做一些过滤然后写入数据库中,但是日期类型的cell取出来是个数字,于是查询了下解决的办法. 基本的代码结构 复制代码 代码如下: data = xlrd.open_workbook(EXCEL_PATH) table = data.sheet_by_index(0) lines = table.nrows cols = table.ncols print u'The total line is %s, cols is %s'%(lines, cols) 读取某个单元
-
python实现读取excel写入mysql的小工具详解
Python是数据分析的强大利器 利用Python做数据分析,第一步就是学习如何读取日常工作中产生各种excel报表并存入数据中,方便后续数据处理. 这里向大家分享python如何读取excel,并使用Python将数据存入Mysql中,有需要的朋友们一起来看看吧. 背景 需要导入全国高校名录到数据库,从教委网站下到了最新的数据,是excel格式,需要做一个工具进行导入,想试用一下python,说干就干. 库 xlrd : excel读写库 pymysql : mysql数据库驱动库,纯pyth
-
python读取Excel表格文件的方法
python读取Excel表格文件,例如获取这个文件的数据 python读取Excel表格文件,需要如下步骤: 1.安装Excel读取数据的库-----xlrd 直接pip install xlrd安装xlrd库 #引入Excel库的xlrd import xlrd 2.获取Excel文件的位置并且读取进来 #导入需要读取Excel表格的路径 data = xlrd.open_workbook(r'C:\Users\NHT\Desktop\Data\\test1.xlsx') table = d
-
解决python xlrd无法读取excel文件的问题
读取文件时报错: xlrd.biffh.XLRDError: Unsupported format, or corrupt file: Expected BOF record; found '<?xml' 该xls文件在打开时确实会警告该文件与扩展名格式不一致.用文本编辑器打开该xls文件查看,发现确实不是xls文件,而是xml文件被保存为了xls文件. 解决办法:将文件后缀名改为.xml,作为xml文件读入. 改名代码: import os os.rename(u"D:\PycharmP
-
Python读取excel文件中带公式的值的实现
在进行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
-
Python读取excel文件中的数据,绘制折线图及散点图
目录 一.导包 二.绘制简单折线 三.pandas操作Excel的行列 四.pandas处理Excel数据成为字典 五.绘制简单折线图 六.绘制简单散点图 一.导包 import pandas as pd import matplotlib.pyplot as plt 二.绘制简单折线 数据:有一个Excel文件lemon.xlsx,有两个表单,表单名分别为:Python 以及student. Python的表单数据如下所示: student的表单数据如下所示: 1.在利用pandas模块进行
-
python 读取excel文件生成sql文件实例详解
python 读取excel文件生成sql文件实例详解 学了python这么久,总算是在工作中用到一次.这次是为了从excel文件中读取数据然后写入到数据库中.这个逻辑用java来写的话就太重了,所以这次考虑通过python脚本来实现. 在此之前需要给python添加一个xlrd模块,这个模块是专门用来操作excel文件的. 在mac中可以通过easy_install xlrd命令实现自动安装模块 import xdrlib ,sys import xlrd def open_excel(fil
-
python读取txt文件中特定位置字符的方法
如下所示: # -*- coding:utf-8 -*- import sys reload(sys) sys.setdefaultencoding('utf8') fp = open("resources.txt", "r") sample = fp.readlines() file=open("test.txt", "w") for line in sample: sample_ = line.split('固定字符')
-
python读取mat文件中的struct问题
目录 python读取mat文件中的struct mat文件结构如下 经过查找资料,总结如下 解决办法 python读取mat文件报错 python读取mat文件中的struct All devils are in the details,做个笔记. mat文件结构如下 ground_truth_data 是1x1的struct(结构体),包含2个字段,一个是list,一个是imgszie.如图1所示 图1 list是一个352x1的cell,点开后如图2,可以看到list中的每一个cell又由
-
浅谈Python xlwings 读取Excel文件的正确姿势
使用Python加载最新的Excel读取类库xlwings可以说是Excel数据处理的利器,但使用起来还是有一些注意事项,否则高大上的Python会跑的比老旧的VBA还要慢. 这里我们对比一下,用几种不同的方法,从一个Excel表格中读取一万行数据,然后计算结果,看看他们的耗时. 1. 处理要求: 一个Excel表格中包含了3万条记录,其中B,C两个列记录了某些计算值,读取前一万行记录,将这两个列的差值进行计算,然后汇总得出差的和. 文件是这个样子:Book300s.xlsx . 2. 处理方式
-
python使用xlrd模块读取xlsx文件中的ip方法
程序中经常需要使用excel文件,批量读取文件中的数据 python读取excel文件可以使用xlrd模块 pip install xlrd安装模块 示例: #coding=utf8 import xlrd from os import path import sys filename='ip.xlsx' if not path.isfile(filename): print "err: not exists or not file ip.xlsx " sys.exit() getfi
-
教你用python将数据写入Excel文件中
目录 一.导入excel表格文件处理函数 二.创建excel表格类型文件 三.在excel表格类型文件中建立一张sheet表单 四.自定义列名 五.将列属性元组col写进sheet表单中 六.将数据写进sheet表单中 七.保存excel文件 附:Python读取Excel文件数据 总结 将数据写入Excel文件中,用python实现起来非常的简单,下面一步步地教大家. 一.导入excel表格文件处理函数 import xlwt 注意,这里的xlwt是python的第三方模块,需要下载安装才能使
-
python高手之路python处理excel文件(方法汇总)
用python来自动生成excel数据文件.python处理excel文件主要是第三方模块库xlrd.xlwt.xluntils和pyExcelerator,除此之外,python处理excel还可以用win32com和openpyxl模块. 方法一: 小罗问我怎么从excel中读取数据,然后我百了一番,做下记录 excel数据图(小罗说数据要给客户保密,我随手写了几行数据): python读取excel文件代码: #!/usr/bin/env python # -*- coding: utf-
随机推荐
- 日常收集整理的Git常用命令
- delphi实现将BMP格式图形转化为JPG格式图形的方法
- JSP学习心得
- angular2+nodejs实现图片上传功能
- IOS 开发之NSDictionary转换成JSON字符串
- xcode8 关闭控制台不打印不信息的解决方法(图文详解)
- python获取外网IP并发邮件的实现方法
- Global.cs中自动获取未处理的异常
- Attribute/特性心得随笔
- 详解VMware 虚拟机中添加新硬盘的方法
- Python中的两个内置模块介绍
- 读取目录下的文件得到一个数组
- 使用富文本编辑器上传图片实例详解
- C#实现图片放大功能的按照像素放大图像方法
- 跟我学习javascript的严格模式
- PHP检测链接是否存在的代码实例分享
- 从豆瓣网站设计谈网站重构
- Python win32com 操作Exce的l简单方法(必看)
- php计算程序运行时间的简单例子分享
- 详解C++文件读写操作