python Excel公式
公式以一个等号开始,可以配置单元格,让它包含通过其他单元格计算得到的 值。在本节中,你将利用 openpyxl 模块,用编程的方式在单元格中添加公式,就像 添加普通的值一样。例如:
>>> sheet['B9'] = '=SUM(B1:B8)'
这将=SUM(B1:B8)作为单元格 B9 的值。这将 B9 单元格设置为一个公式,计算 单元格 B1 到 B8 的和。图 12-5 展示了它的效果。
为单元格设置公式就像设置其他文本值一样。在交互式环境中输入以下代码:
>>> import openpyxl
>>> wb = openpyxl.Workbook()
>>> sheet = wb.active
>>> sheet['A1'] = 200
>>> sheet['A2'] = 300
>>> sheet['A3'] = '=SUM(A1:A2)'
>>> wb.save('writeFormula.xlsx')
单元格 A1 和 A2 分别设置为 200 和 300。单元格 A3 设置为一个公式,求出 A1 和A2 的和。如果在 Excel 中打开这个电子表格,A3 的值将显示为 500。 也可以读取单元格中的公式,就像其他值一样。但是,如果你希望看到该公式 的计算结果,而不是原来的公式,就必须将 load_workbook()的 data_only 关键字参 数设置为 True。这意味着 Workbook 对象要么显示公式,要么显示公式的结果,不 能兼得(但是针对一个电子表格文件,可以加载多个 Workbook 对象)。在交互式环 境中输入以下代码,看看有无 data_only关键字参数时,加载工作簿的区别:
>>> import openpyxl
>>> wbFormulas = openpyxl.load_workbook('writeFormula.xlsx')
>>> sheet = wbFormulas.active
>>> sheet['A3'].value
'=SUM(A1:A2)'
>>> wbDataOnly = openpyxl.load_workbook('writeFormula.xlsx', data_only=True)
>>> sheet = wbDataOnly.active
>>> sheet['A3'].value
500
这里,如果调用 load_workbook()时带有 data_only=True,A3 单元格就显示为 500,即公式的结果,而不是公式的文本。 Excel 公式为电子表格提供了一定程度的编程能力,但对于复杂的任务,很快 就会失去控制。例如,即使你非常熟悉 Excel 的公式,要想弄清楚=IFERROR (TRIM(IF(LEN(VLOOKUP(F7,Sheet2!$A$1:$B$10000,2,FALSE))>0,SUBSTITUTE (VLOOKUP (F7, Sheet2!$A$1:$B$10000, 2, FALSE), " ", ""),"")), "")实际上做了什么, 也是一件非常头痛的事。Python 代码的可读性要好得多。
python Excel公式相关推荐
- python利用公式计算_Python利用openpyxl处理Excel文件(公式实例)
前面我们学习了Python使用openpyxl模块处理Excel文件的大部分内容,今天,我们通过一个例子来学习Python使用Excel公式的方法,引出今天的主题利用openpyxl处理Excel公式 ...
- python excel 自动化-Python 自动化:处理 Excel(笔记)
自己接触 Python 也有一段时间,入门开始一直都没有熟练:个中学习了不少教材,甚至付费过某个知名网站.看过那么多内容,觉得 Python 入门并不需要付费的内容,网络上有许多优秀的免费内容. 自己 ...
- matlab用辛普森公式求积分_如何用Excel公式求最大值对应的行列序号
微信公众号: Excel and Python 微信名搜索: 实用办公编程技能 如何用Excel公式求最大值对应的行列序号呢? 下面,我们来看看来自问题互动栏目的一个具体问题. 具体问题:求出哪一天哪 ...
- python excel详解_Python - excel 详解
Python读excel,2003用xlrd,2007和2010用openpyxl xlrd介绍:http://pypi.python.org/pypi/xlrd 转自:http://huaxia52 ...
- Python+Excel 华尔街的一股清流
论自由意志与价值 一.人生苦短,学点Python 二.需求是第一生产动力 三.小舟从此逝,代码寄余生 文章结语 一.人生苦短,学点Python 如果你把衣服和裤子按照左边衣服,右边裤子,每次从最新的一 ...
- 《Python Excel 教程》
Python开发准备工作 1.安装Python 解释执行器 ◦安装方法见 http://114.116.244.115/static/%E5%90%AF%E8%88%AA%E7%8F%AD/pytho ...
- python excel动态图表_那些年做过的动态图表-实用漂亮的Excel动态图表
原标题:那些年做过的动态图表-实用漂亮的Excel动态图表 欢迎关注天善智能,我们是专注于商业智能BI,人工智能AI,大数据分析与挖掘领域的垂直社区,学习,问答.求职一站式搞定! 对商业智能BI.大数 ...
- mytrader-开源股票期货金融软件+支持C/C++/Python/Excel/VBA/麦语言的量化分析交易平台
mytrader致力于为量化交易.算法交易.程序化交易以及技术分析爱好者打造最极致的行情分析交易平台. mytrader是一款基于ZQDB构建的量化分析交易平台. mytrader是绿色免安装版本,您 ...
- excel输入公式显示公式_快速输入复杂的Excel公式
excel输入公式显示公式 On Chandoo's blog, Hui is running a series of articles with Excel Tips. There were som ...
- vba和宏_保留有关Excel公式和宏的注释
vba和宏 Do you keep notes about the Excel formulas and macros that you create? What's your documentati ...
最新文章
- 从零开始入门 K8s | 应用编排与管理
- python赋值语句对错_深入理解Python中变量赋值的问题
- react学习(71)--render使用
- Java基础-this关键字和构造方法(10)
- AJAX如何做出输入框提示!
- LINUX系统配置相关
- Unity Shader 详细自学(一)
- 生物电(ECG、EMG、EEG)科普研究
- (转帖)CAP理论(1)
- 使用CSS3实现按钮特效
- 有鱼上钩!修改游戏数据前的准备
- python 图片识别_Python—识别图片中的文字
- 什么是 PHP? 为什么用 PHP? 有谁在用 PHP?
- 10Wqps评论中台,如何架构?B站是这么做的!!!
- Word安全警告 宏已被禁用解决
- 高德地图如何取消订单_高德地图怎么取消订单
- textcnn文本词向量_基于Text-CNN模型的中文文本分类实战
- Unity2d Rubys Adventure 课程设计报告
- 解决git时出现error: src refspec master does not match any问题
- 平衡二叉树算法实现C++