Python轻松设置Excel单元格数字显示格式

Excel作为强大的数据处理与分析工具,不仅能够存储大量数据,还支持复杂的数据处理与可视化功能。而如何恰当地展示Excel表格中的数据是Excel文件制作的关键之一。这便涉及到Excel单元格数字格式的设置。数字格式不仅关乎数据的美学呈现,如货币、日期或百分比的格式化显示,更直接影响到数据的可读性与准确性。Python语言可以帮助我们灵活设置Excel单元格的数字格式,保证数据的一致性与专业标准。本文将介绍如何使用Python对Excel工作表中单元格的数字格式进行设置。

文章目录

    • 通过格式代码设置Excel单元格的数字格式

本文所使用的方法需要用到Spire.XLS for Python,PyPI:pip install Spire.XLS

申请免费License

通过格式代码设置Excel单元格的数字格式

Excel中单元格的数字显示格式可以由格式代码进行设置,这些代码通过一些列符号决定单元格中数值数据、时间和日期数据以及汇率数据等的显示方式。以下是一些常用的格式代码符号:

  • #:表示数字占位符,仅显示非零数字。
  • 0:代表数字占位符,显示数字时总会占据至少一个位置,即使数字为 0 也会显示。
  • ;(半角分号):用于分隔正数、负数和零的格式。
  • /(斜杠):在日期格式中分隔年、月和日。
  • $:货币符号,用于表示货币值,可根据系统区域设置。
  • ()(半角括号):用于负数的格式,使负数显示在括号中。
  • [](方括号):用于条件格式设置,如颜色设置[Red]或条件表达式[<=100]"Low";[>100]"High"

库中提供CellRange.NumberValue来在单元格中添加数据,以及CellRange.NumberFormat来通过格式代码来设置单元格数据的数字展示格式。以下是用Python设置Excel单元格数字格式的操作步骤:

  1. 导入所需模块。
  2. 创建Workbook实例从而创建一个Excel工作簿。
  3. 使用Worhbook.Worksheets.Clear()方法清除默认工作簿,并使用Workbook.Worksheets.Add()方法在工作簿中新建一个工作表。
  4. 使用Worksheet.Range[].Text属性设置表头文本。
  5. 使用Worksheet.Range[].NumberValue属性设置单元格数据,并使用Worksheet.Range[].NumberFormat通过格式代码设置单元格数字格式。
  6. 使用CellRange.Style.Font属性下的属性设置字体格式,以及CellRange.AutoFitRows()CellRange.AutoFitColumns()方法自动调整行高和列宽。
  7. 使用Workbook.SaveToFile()方法保存工作簿。
  8. 释放资源。

代码示例:

from spire.xls import *
from spire.xls.common import *# 创建Workbook实例
workbook = Workbook()# 清除默认工作表并创建一个新的工作表
workbook.Worksheets.Clear()
sheet = workbook.Worksheets.Add("数字格式")# 设置标题行
sheet.Range["B9"].Text = "数字格式"
sheet.Range["C9"].Text = "数值"
sheet.Range["D9"].Text = "显示"# 设置带千位分隔符和两位小数的数字
sheet.Range["B10"].Text = "带千位分隔符和两位小数的数字"
sheet.Range["C10"].Text = "-1234123.5678"
sheet.Range["D10"].NumberValue = -1234123.5678
sheet.Range["D10"].NumberFormat = "#,##0.00"# 设置红色的数字
sheet.Range["B11"].Text = "红色数字"
sheet.Range["C11"].Text = "12345.12345"
sheet.Range["D11"].NumberValue = 12345.12345
sheet.Range["D11"].NumberFormat = "[Red]###0.00"# 设置带两位小数的百分数
sheet.Range["B12"].Text = "带两位小数的百分数"
sheet.Range["C12"].Text = "0.12345"
sheet.Range["D12"].NumberValue = 0.12345
sheet.Range["D12"].NumberFormat = "0.00%"# 设置带括号的数字
sheet.Range["B13"].Text = "带括号的数字"
sheet.Range["C13"].Text = "-1234.5678"
sheet.Range["D13"].NumberValue = -1234.5678
sheet.Range["D13"].NumberFormat = "(###0.00;(###0.00))"# 设置日期
sheet.Range["B14"].Text = "日期"
sheet.Range["C14"].Text = "36526"
sheet.Range["D14"].NumberValue = 36526
sheet.Range["D14"].NumberFormat = "yyyy/m/d"# 设置24小时制时间
sheet.Range["B15"].Text = "24小时制时间"
sheet.Range["C15"].Text = "0.6"
sheet.Range["D15"].NumberValue = 0.6
sheet.Range["D15"].NumberFormat = "H:MM:SS"# 设置中文格式的货币
sheet.Range["B16"].Text = "中文格式的货币"
sheet.Range["C16"].Text = "1234.56"
sheet.Range["D16"].NumberValue = 1234.56
sheet.Range["D16"].NumberFormat = "¥#,##0.00"# 设置科学计数法
sheet.Range["B17"].Text = "科学计数法"
sheet.Range["C17"].Text = "1234.5678"
sheet.Range["D17"].NumberValue = 1234.5678
sheet.Range["D17"].NumberFormat = "0.00E+00"# 设置日期和12小时制时间
sheet.Range["B18"].Text = "日期和12小时制时间"
sheet.Range["C18"].Text = "36526"
sheet.Range["D18"].NumberValue = 36526
sheet.Range["D18"].NumberFormat = "yyyy/m/d h:mm:ss 上午/下午"# 设置带文本的数字
sheet.Range["B19"].Text = "带文本的数字"
sheet.Range["C19"].Text = "1234.5678"
sheet.Range["D19"].NumberValue = 1234.5678
sheet.Range["D19"].NumberFormat = "\"CNY \"###0.00"# 设置字体、字体大小并自动调整行列
sheet.AllocatedRange.Style.Font.FontName = "HarmonyOS Sans SC"
sheet.AllocatedRange.Style.Font.Size = 13
sheet.AllocatedRange.AutoFitRows()
sheet.AllocatedRange.AutoFitColumns()# 保存文件
workbook.SaveToFile("output/Excel单元格数字格式.xlsx", FileFormat.Version2016)
workbook.Dispose()

保存的工作簿
Python设置Excel单元格数字格式

本文介绍了如何使用Python设置Excel工作表中单元格的数字格式。

更多Excel文件处理技巧请前往Spire.XLS for Python教程查看。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/355602.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Sa-Token|4】Sa-Token微服务项目应用

若微服务数量多&#xff0c;如果每个服务都改动&#xff0c;工作量大&#xff0c;则可以只在网关和用户中心进行改动&#xff0c;也是可以实现单点登录的。 这种方式可以通过在网关服务中生成和验证 Sa-Token&#xff0c;并将其与现有的 Token关联存储在 Redis 中。用户中心提供…

arsetryhtehrwgefwadasdadasd

驱动项目 https://github.com/wqreytuk/article/blob/main/agsdygasidgasuidgoGx64_ASM_Kernel_Mode-main.7z 48b91400000080f7ffff48b8bd427ae5d594bfd6488b0948f7e148b8cdcccccccccccccc48c1ea1748f7e24c8bea49c1ed02 直接在windbg中把执行内存修改为上面这一串字节序列&am…

Java开发环境配置

一、JDK 下载JDK&#xff1a;Java Downloads | Oracle 配置环境变量&#xff1a;09、Java入门&#xff1a;Path、JAVA_HOME环境变量配置_哔哩哔哩_bilibili 二、IDEA 下载IDEA&#xff1a; Download IntelliJ IDEA – The Leading Java and Kotlin IDE (jetbrains.com) 建…

【Sa-Token|3】Sa-Token集成到现有微服务详细介绍

一、系统架构调整 用户中心&#xff1a;保持现有的用户登录、注册接口不变。多个项目&#xff1a;前后端分离&#xff0c;保持现有逻辑不变。网关服务&#xff1a;新增或配置网关服务&#xff0c;处理所有请求并进行 Token 校验和转发。统一 Token 管理&#xff1a;通过 Sa-Tok…

Kafka多维度调优

优化金字塔 应用程序层面 框架层面&#xff08;Broker层面&#xff09; JVM层面 操作系统层面 应用程序层面&#xff1a;应当优化业务代码合理使用kafka&#xff0c;合理规划主题&#xff0c;合理规划分区&#xff0c;合理设计数据结构&#xff1b; 框架层面&#xff1a;在不…

俄罗斯塔斯社TASS 媒体投放报道:海外媒体发稿扭转战局

大舍传媒 -作为一家颇具影响力的媒体机构&#xff0c;一直致力于传播客观、真实的新闻信息。最近&#xff0c;大舍传媒注意到了塔斯社TASS的报道&#xff0c;了解到海外媒体发稿对于扭转国内局势有着重要的影响。本文将就此话题进行分析探讨。 塔斯社TASS&#xff1a;俄语区最…

transformer之位置编码

由于 Transformer 模型中自注意力模块具有置换不变性,因此仅使用注意力机制无法捕捉序列中的顺序关系,从而退化为“词袋模型”。为了解决这一问题,需要引入位置编码(Position Embedding, PE)对于序列信息进行精确建模,从而将绝对或相对位置信息整合到模型中。 什么是位置…

Excel 组内多列明细拼成一行

某表格有 1 个分组列和 2 个明细列。 ABC1ObjectNameInfo212AGggtz44456312AGggtr99987412AKkkio66543512ABbvgf66643612AVvvhg888765712AFffgt8786FGggtf23232596FXxxde44321610P23Cccvb554328711P23Vvvbj565656412P23Sswec898976413P23Llloiu343432 现在要把组内的多列明细…

在ubuntu中恢复误删除的文件

1、安装 TestDisk 在 Ubuntu 上&#xff0c;可以使用以下命令安装 TestDisk&#xff1a; sudo apt-get install testdisk2、查询你删除的文件所在那个分区 #查询分区 df -h #我这里是/dev/sda2 #也可以使用下面命令查看具体哪个分区 lsblk3、查询该分区是什么系统类型 sudo …

数据库系统概论(个人笔记)(第四部分)

数据库系统概论&#xff08;个人笔记&#xff09; 文章目录 数据库系统概论&#xff08;个人笔记&#xff09;4、中间的SQL4.1 连接表达式4.2 视图4.3 事务4.4 完整性约束4.5 SQL数据类型和模式4.6 SQL中的索引定义4.7 授权 4、中间的SQL 4.1 连接表达式 Join Expressions Join…

计算机网络:网络层 - 路由选择协议

计算机网络&#xff1a;网络层 - 路由选择协议 路由器的结构路由选择协议概述自治系统 AS内部网关协议路由信息协议 RIP距离向量算法RIP报文格式收敛问题 开放最短路径优先 OSPF基本工作原理自治系统分区 外部网关协议BGP-4 路由器的结构 如图所示&#xff0c;路由器被分为路由…

PostgreSQL的学习心得和知识总结(一百四十五)|深入理解PostgreSQL数据库之ShowTransactionState的使用及父子事务有限状态机

目录结构 注&#xff1a;提前言明 本文借鉴了以下博主、书籍或网站的内容&#xff0c;其列表如下&#xff1a; 1、参考书籍&#xff1a;《PostgreSQL数据库内核分析》 2、参考书籍&#xff1a;《数据库事务处理的艺术&#xff1a;事务管理与并发控制》 3、PostgreSQL数据库仓库…

mac怎么压缩pdf文件,苹果电脑怎么压缩pdf文件大小

在当今数字化时代&#xff0c;PDF文件已成为广泛使用的文档格式之一。然而&#xff0c;PDF 文件可能会因其包含的图像、图形和其他元素而导致文件较大&#xff0c;这可能会影响文件的传输、存储和共享。因此&#xff0c;对 PDF 文件进行压缩以减小其文件大小是很有必要的。今天…

【机器学习 复习】第3章 K-近邻算法

一、概念 1.K-近邻算法&#xff1a;也叫KNN 分类 算法&#xff0c;其中的N是 邻近邻居NearestNeighbor的首字母。 &#xff08;1&#xff09;其中K是特征值&#xff0c;就是选择离某个预测的值&#xff08;例如预测的是苹果&#xff0c;就找个苹果&#xff09;最近的几个值&am…

OCC异常处理机制理解

1.目的 异常处理提供了一种将控制权从正在执行的程序中的给定点转移到与先前执行的另一点关联的异常处理程序的方法。在各种错误条件下引发异常&#xff0c;该异常会中断其正常执行并将控制权传递给捕获此异常的处理程序&#xff0c;以保护软件质量。OCC作为开源的几何算法库&…

CV预测:快速使用DenseNet神经网络

AI预测相关目录 AI预测流程&#xff0c;包括ETL、算法策略、算法模型、模型评估、可视化等相关内容 最好有基础的python算法预测经验 EEMD策略及踩坑VMD-CNN-LSTM时序预测对双向LSTM等模型添加自注意力机制K折叠交叉验证optuna超参数优化框架多任务学习-模型融合策略Transform…

如何使用nginx部署https网站(亲测可行)

公司本来有网站sqlynx.com是http运行的&#xff0c;但因为产品出海&#xff0c;基本上都要求使用https&#xff0c;但又需要兼容已有的http服务&#xff0c;所以我自己尝试做了一次https的部署&#xff0c;目前是正常可用的。 目录 步骤 1&#xff1a;安装 Nginx 步骤 2&…

国产24位I2S输入+192kHz立体声DAC音频数模转换器CJC4344

CJC4344是一款立体声数模转换芯片&#xff0c;内含插值滤波器、multi bit数模转换器、输出模拟滤波器。CJC4344系列支持大部分的音频数据格式。CJC4344基于一个带线性模拟低通滤波器的四阶multi-bitΔ-Σ调制器&#xff0c;而且本芯片可以通过检测信号频率和主时钟频率&#xf…

vi/vim使用命令

你是否在编辑文件时以为键盘坏了&#xff0c;为什么不能删除呢&#xff0c;为什么不能敲代码呢&#xff0c;当你初识vi&#xff0c;会觉得这个东西设计很难用&#xff0c;这篇教程带你熟练得用上这款经典的工具&#xff0c;当你熟练了这款工具就会真正体会到高效率打码 Vi 是在…

南京邮电大学计算机网络实验二(网络路由器配置RIP协议)

文章目录 一、 实验目的和要求二、 实验环境(实验设备)三、 实验步骤四、实验小结&#xff08;包括问题和解决方法、心得体会、意见与建议等&#xff09;五、报告资源 一、 实验目的和要求 掌握思科路由器的运行过程&#xff0c;掌握思科路由器的硬件连线与接口&#xff0c;掌…