使用Python设置Excel单元格数字的显示格式
引言
Excel作为强大的数据处理与分析工具,不仅能够存储大量数据,还支持复杂的数据处理与可视化功能。而如何恰当地展示Excel表格中的数据是Excel文件制作的关键之一。这便涉及到Excel单元格数字格式的设置。数字格式不仅关乎数据的美学呈现,如货币、日期或百分比的格式化显示,更直接影响到数据的可读性与准确性。Python语言可以帮助我们灵活设置Excel单元格的数字格式,保证数据的一致性与专业标准。本文将介绍如何使用Python对Excel工作表中单元格的数字格式进行设置。
本文所使用的方法需要用到Spire.XLS for Python,PyPI:pip install Spire.XLS
。
通过格式代码设置Excel单元格的数字格式
Excel中单元格的数字显示格式可以由格式代码进行设置,这些代码通过一些列符号决定单元格中数值数据、时间和日期数据以及汇率数据等的显示方式。以下是一些常用的格式代码符号:
- #:表示数字占位符,仅显示非零数字。
- 0:代表数字占位符,显示数字时总会占据至少一个位置,即使数字为 0 也会显示。
- ;(半角分号):用于分隔正数、负数和零的格式。
- /(斜杠):在日期格式中分隔年、月和日。
- $:货币符号,用于表示货币值,可根据系统区域设置。
- ()(半角括号):用于负数的格式,使负数显示在括号中。
- [](方括号):用于条件格式设置,如颜色设置
[Red]
或条件表达式[<=100]"Low";[>100]"High"
。
库中提供CellRange.NumberValue
来在单元格中添加数据,以及CellRange.NumberFormat
来通过格式代码来设置单元格数据的数字展示格式。以下是用Python设置Excel单元格数字格式的操作步骤:
- 导入所需模块。
- 创建
Workbook
实例从而创建一个Excel工作簿。 - 使用
Worhbook.Worksheets.Clear()
方法清除默认工作簿,并使用Workbook.Worksheets.Add()
方法在工作簿中新建一个工作表。 - 使用
Worksheet.Range[].Text
属性设置表头文本。 - 使用
Worksheet.Range[].NumberValue
属性设置单元格数据,并使用Worksheet.Range[].NumberFormat
通过格式代码设置单元格数字格式。 - 使用
CellRange.Style.Font
属性下的属性设置字体格式,以及CellRange.AutoFitRows()
和CellRange.AutoFitColumns()
方法自动调整行高和列宽。 - 使用
Workbook.SaveToFile()
方法保存工作簿。 - 释放资源。
代码示例:
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单元格数字的显示格式的文章就介绍到这了,更多相关Python Excel数字格式内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
ubuntu 20.04系统下如何切换gcc/g++/python的版本
这篇文章主要给大家介绍了关于ubuntu 20.04系统下如何切换gcc/g++/python版本的相关资料,文中通过代码介绍的非常详细,对大家学习或者使用ubuntu具有一定的参考借鉴价值,需要的朋友可以参考下2023-12-12python中tqdm使用,对于for和while下的两种不同情况问题
这篇文章主要介绍了python中tqdm使用,对于for和while下的两种不同情况问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教2023-08-08
最新评论