『python办公自动化』Excel:标红低于100的数据


theme: smartblue

👀 点赞 + 关注 + 收藏 = 学会了

📚 专栏:写给产品经理的办公自动化教程

本文简介

作为产品经理,收集和分析数据是必备技能。我们的产品可能会设置埋点监听用户行为、记录页面和某些功能的使用情况。你问研发同事拿埋点数据,研发同事可能会导出一份 Excel 给你。此时如果你想标红使用量少于100的数据,可以在Excel里操作,也可以使用 Python 去处理。本文介绍后者。

在此之前你需要掌握 Python 的基础语法,不了解 Python 的工友可以查阅 《Python 快速入门篇》

动手操作

Python 实现上述需求只需4步:

  1. 下载并导入 openpyxl
  2. 加载 Excel 文件(本例的统计表叫 "功能使用量统计.xlsx" )
  3. 遍历并标红数值小于100的数据
  4. 保存文件

首先打开 Jupyter Notebook 创建一个 Notebook,不了解 Jupyter Notebook 的工友可以回顾一下 《Python编辑器:Jupyter Notebook》

openpyxl 是一个强大的 Python 库,用于处理Excel文件。

第一步先安装 openpyxl

```python pip install openpyxl

如果在 Jupyter Notebook 使用下面这句

!pip install openpyxl ```

接下来就是使用 openpyxl 处理这份 Excel 文件了,具体说明请看代码注释。

```python

引入 openpyxl

from openpyxl import loadworkbook # loadworkbook 用于加载 Excel 文件 from openpyxl.styles.fonts import Font # 这里的 Font 主要作用是设置文本样式

加载Excel文件,获取工作本worksheet

wb = load_workbook('./功能使用量统计.xlsx')

获取worksheet

worksheet 就是 Excel 的工作簿,详情请看下方的"Excel工作区图片解释"

因为本例只有1个工作簿,所以用 active 可以获取当前活动的工作簿。

ws = wb.active

定义文本颜色(00FF0000表示红色)

font_style = Font(color='00FF0000')

遍历每一行,每一列。也就是遍历Excle的每一个单元格。

min_row=2: 从第2行开始

min_col=2: 从第2列开始

因为第一行是表头,第一列是事件名称。这些数据都不是我们拿来判断是否大于100的。所以使用 minrow=2 和 mincol=2 跳过这些数据。

for row in ws.iterrows(min row=2, mincol=2): # 获取每一格 for cell in row: # cell是单元格对象,要获取值需要访问 value 属性 if cell.value < 100: # 判断如果 cell 中的值<100,标记为红色 cell.font = fontstyle

保存文件,保存时需要指定文件名以及文件格式,也就是文件的后缀

wb.save('功能使用量统计.xlsx')

保存完就关闭这个文件

wb.close() ```

效果:

Excel工作区图片解释

工作簿:


点赞 + 关注 + 收藏 = 学会了

相关推荐
聪明的墨菲特i4 分钟前
Django前后端分离基本流程
后端·python·django·web3
悟兰因w7 分钟前
论文阅读(三十五):Boundary-guided network for camouflaged object detection
论文阅读·人工智能·目标检测
大山同学9 分钟前
多机器人图优化:2024ICARA开源
人工智能·语言模型·机器人·去中心化·slam·感知定位
工业3D_大熊10 分钟前
【虚拟仿真】CEETRON SDK在船舶流体与结构仿真中的应用解读
java·python·科技·信息可视化·c#·制造·虚拟现实
熊的猫13 分钟前
webpack 核心模块 — loader & plugins
前端·javascript·chrome·webpack·前端框架·node.js·ecmascript
Topstip16 分钟前
Gemini 对话机器人加入开源盲水印技术来检测 AI 生成的内容
人工智能·ai·机器人
SEEONTIME19 分钟前
python-24-一篇文章彻底掌握Python HTTP库Requests
开发语言·python·http·http库requests
Bearnaise19 分钟前
PointMamba: A Simple State Space Model for Point Cloud Analysis——点云论文阅读(10)
论文阅读·笔记·python·深度学习·机器学习·计算机视觉·3d
Zfox_19 分钟前
【Linux】进程信号全攻略(二)
linux·运维·c语言·c++
速盾cdn20 分钟前
速盾:vue的cdn是干嘛的?
服务器·前端·网络