Python如何设置Excel单元格边框

 更新时间:2025年04月20日 08:12:04   作者:Eiceblue  
在数据驱动的业务场景中,自动化设置Excel单元格边框成为提升数据处理效率的关键环节,下面我们就来讲讲如何使用Python设置Excel工作簿中单元格的边框吧

在数据驱动的业务场景中,自动化设置Excel单元格边框成为提升数据处理效率的关键环节。通过程序化控制边框样式,不仅能确保海量报表格式的统一性,还能通过粗细、虚实等视觉元素强化数据逻辑层次。当面对动态更新的分析报告时,代码驱动的边框规则可自适应内容变化,避免人工反复调整的误差风险,同时为数据可视化建立可复用的标准化框架。本文将介绍如何使用Python设置Excel工作簿中单元格的边框。

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

用Python设置Excel内边框和外边框

库中提供的CellRange.BorderAround()方法和CellRange.BoderInside()方法可分别用于直接对指定单元格范围设置边框,并可指定边框样式和颜色。以下是操作步骤:

Excel 单元格区域设置内边框与外边框的操作步骤

1.导入必要的类

使用以下类:

  • Workbook:表示 Excel 工作簿
  • LineStyleType:定义边框的样式(如 Thick、Thin)
  • ExcelColors:提供预定义颜色用于边框

2.创建 Workbook 实例并加载文件

使用 Workbook() 创建工作簿对象,使用 LoadFromFile(path) 方法加载现有的 Excel 文件。

3.获取工作表

通过 Workbook.Worksheets.get_Item(index) 方法获取指定的工作表。

4.选定需要设置边框的单元格区域

使用 sheet.Range.get_Item(startRow, startCol, endRow, endCol) 方法指定区域范围。

5.设置外边框

使用 Range.BorderAround(lineStyle, color) 方法为区域设置外边框。

  • lineStyle 为 LineStyleType 枚举值
  • color 为 ExcelColors 枚举值

6.设置内边框

  • 使用 Range.BorderInside(lineStyle, color) 方法为区域设置内部的行列边框。
  • 适用于表格区域或多行多列的区域设置。

7.保存和释放资源

使用 SaveToFile(path) 方法保存文件,使用 Dispose() 方法释放资源。

代码示例

from spire.xls import Workbook, LineStyleType, ExcelColors

# 创建Workbook对象
workbook = Workbook()

# 载入Excel文件
workbook.LoadFromFile("Sample.xlsx")

# 获取第一个工作表
sheet = workbook.Worksheets.get_Item(0)

# 获取标题和表头行
headerRow = sheet.Range.get_Item(1, 1, 2, sheet.Range.ColumnCount)
# 设置标题和表头外边框
headerRow.BorderAround(LineStyleType.Thick, ExcelColors.BlueGray)

# 获取数据行
dataRows = sheet.Range.get_Item(3, 1, sheet.Range.RowCount, sheet.Range.ColumnCount)
# 设置数据行内边框
dataRows.BorderInside(LineStyleType.Thin, ExcelColors.BrightGreen)

# 保存工作簿
workbook.SaveToFile("output/OutsideInsideBorders.xlsx")
workbook.Dispose()

输出的文档

用Python设置单元格上下左右边框

库中还提供了CellRange.Style.Borders.get_Item()方法来访问单元格区域的上下左右以及斜线边框,并可通过LineStyle和Color等属性来对边框样式进行自定义。以下是添加上下左右以及斜线边框到单元格区域的操作步骤:

设置单元格或行的单侧边框的操作步骤

1.导入必要的类

使用以下类:

  • Workbook:表示 Excel 工作簿
  • BordersLineType:枚举,用于指定边框类型(如 EdgeTop, EdgeBottom 等)
  • LineStyleType:边框线条样式(如 Thick, Dashed 等)
  • Color:用于设置边框颜色(可通过 Color.get_XXX() 获取预定义颜色)

2.创建 Workbook 实例并加载 Excel 文件

  • 创建对象:workbook = Workbook()
  • 加载文件:workbook.LoadFromFile(path)

3.获取工作表

使用 Workbook.Worksheets.get_Item(index) 获取目标工作表。

4.选定目标单元格或整行

  • 获取行:sheet.Rows.get_Item(rowIndex)
  • 获取单元格:sheet.Range.get_Item(row, column)

5.设置边框样式与颜色

获取边框对象:

style = target.Style.Borders.get_Item(BordersLineType.XXX)

XXX 可为:

  • EdgeTop(上边框)
  • EdgeBottom(下边框)
  • EdgeLeft(左边框)
  • EdgeRight(右边框)
  • DiagonalUp(斜上线)
  • DiagonalDown(斜下线)

设置线型与颜色:

style.LineStyle = LineStyleType.XXX
style.Color = Color.get_XXX()

6.保存文件并释放资源

使用 SaveToFile(path) 保存更改,使用 Dispose() 释放资源。

代码示例

from spire.xls import Workbook, BordersLineType, LineStyleType, Color

# 创建Workbook对象
workbook = Workbook()

# 载入Excel文件
workbook.LoadFromFile("Sample.xlsx")

# 获取第一个工作表
sheet = workbook.Worksheets.get_Item(0)

# 获取第二行
row2 = sheet.Rows.get_Item(1)
# 设置下边框
row2.Style.Borders.get_Item(BordersLineType.EdgeBottom).LineStyle = LineStyleType.Thick
row2.Style.Borders.get_Item(BordersLineType.EdgeBottom).Color = Color.get_White()

# 获取第四行
row4 = sheet.Rows.get_Item(3)
# 设置上边框
row4.Style.Borders.get_Item(BordersLineType.EdgeTop).LineStyle = LineStyleType.Dotted
row4.Style.Borders.get_Item(BordersLineType.EdgeTop).Color = Color.get_Red()

# 获取第六行第二个单元格
cell1 = sheet.Range.get_Item(6, 2)
# 设置左边框
cell1.Style.Borders.get_Item(BordersLineType.EdgeLeft).LineStyle = LineStyleType.DashDotDot
cell1.Style.Borders.get_Item(BordersLineType.EdgeLeft).Color = Color.get_Blue()

# 获取第八行第二个单元格
cell2 = sheet.Range.get_Item(8, 2)
# 设置右边框
cell2.Style.Borders.get_Item(BordersLineType.EdgeRight).LineStyle = LineStyleType.Dashed
cell2.Style.Borders.get_Item(BordersLineType.EdgeRight).Color = Color.get_Brown()

# 获取第十行
row10 = sheet.Rows.get_Item(9)
# 设置下斜线边框
row10.Style.Borders.get_Item(BordersLineType.DiagonalDown).LineStyle = LineStyleType.Double
row10.Style.Borders.get_Item(BordersLineType.DiagonalDown).Color = Color.get_Yellow()

# 获取第十二行
row12 = sheet.Rows.get_Item(11)
# 设置上斜线边框
row12.Style.Borders.get_Item(BordersLineType.DiagonalUp).LineStyle = LineStyleType.Medium
row12.Style.Borders.get_Item(BordersLineType.DiagonalUp).Color = Color.get_Aqua()

# 保存文件
workbook.SaveToFile("output/SingleBorders.xlsx")
workbook.Dispose()

输出的文档

本文演示了如何使用Python设置Excel边框,包括设置内边框和外边框,以及分别设置上下左右及斜线边框。

到此这篇关于Python如何设置Excel单元格边框的文章就介绍到这了,更多相关Python设置Excel单元格边框内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python制作英语翻译小工具代码实例

    python制作英语翻译小工具代码实例

    这篇文章主要介绍了python制作英语翻译小工具代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • 详解django三种文件下载方式

    详解django三种文件下载方式

    这篇文章主要介绍了详解django三种文件下载方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • pytorch实现逻辑回归

    pytorch实现逻辑回归

    这篇文章主要为大家详细介绍了pytorch实现逻辑回归,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • Python如何急速下载第三方库详解

    Python如何急速下载第三方库详解

    这篇文章主要给大家介绍了关于Python如何急速下载第三方库的相关资料,文中通过图文介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • python为什么要安装到c盘

    python为什么要安装到c盘

    在本篇文章里小编给大家整理的是一篇关于python安装到c盘的原因的文章,有需要的朋友们可以学习参考下。
    2020-07-07
  • Python Selenium动态渲染页面和抓取的使用指南

    Python Selenium动态渲染页面和抓取的使用指南

    在Web数据采集领域,动态渲染页面已成为现代网站的主流形式,本文将从技术原理,环境配置,核心功能系统讲解Selenium在Python动态爬虫中的应用,需要的可以参考下
    2025-05-05
  • Python import与from import使用和区别解读

    Python import与from import使用和区别解读

    Python程序可以调用一组基本的函数(即内建函数),比如print()、input()和len()等函数。接下来通过本文给大家介绍Python import与from import使用及区别介绍,感兴趣的朋友一起看看吧
    2021-09-09
  • 解读Tensorflow2.0训练损失值降低,但测试正确率基本不变的情况

    解读Tensorflow2.0训练损失值降低,但测试正确率基本不变的情况

    这篇文章主要介绍了Tensorflow2.0训练损失值降低,但测试正确率基本不变的情况,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • python并发爬虫实用工具tomorrow实用解析

    python并发爬虫实用工具tomorrow实用解析

    这篇文章主要介绍了python并发爬虫实用工具tomorrow实用解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-09-09
  • Python针对给定字符串求解所有子序列是否为回文序列的方法

    Python针对给定字符串求解所有子序列是否为回文序列的方法

    这篇文章主要介绍了Python针对给定字符串求解所有子序列是否为回文序列的方法,涉及Python针对字符串的遍历、判断、运算相关操作技巧,需要的朋友可以参考下
    2018-04-04

最新评论