当前位置: 首页 > news >正文

python如何设置excel单元格边框样式

在Python中,可以使用openpyxl库为Excel单元格设置边框样式。以下是详细步骤和示例代码:


方法一:使用 openpyxl 库

步骤说明:
  1. 安装库

    pip install openpyxl
    
  2. 导入必要类

    from openpyxl import Workbook
    from openpyxl.styles import Border, Side
    from openpyxl.styles.colors import Color  # 可选,用于颜色设置
    
  3. 创建/加载工作簿和工作表

    # 新建工作簿
    wb = Workbook()
    sheet = wb.active
    sheet.title = "边框样式示例"# 或加载现有文件
    # wb = load_workbook('示例.xlsx')
    # sheet = wb['Sheet1']
    
  4. 定义边框样式

    • 单边样式(如仅顶部加粗):
      thick_top = Side(border_style="thick", color="FF0000")  # 红色粗线
      border = Border(top=thick_top)
      
    • 完整边框组合
      # 定义各边样式
      thin_border = Side(border_style="thin", color="000000")  # 黑色细线
      dotted_border = Side(border_style="dotted", color="00FF00")  # 绿色虚线# 组合边框(上、下、左、右)
      border = Border(top=thin_border,bottom=thin_border,left=thin_border,right=thin_border
      )
      
  5. 应用边框到单元格/区域

    # 单个单元格(如A1)
    sheet['A1'].border = border# 批量设置区域(如A1:D4)
    for row in sheet['A1:D4']:for cell in row:cell.border = border
    
  6. 保存文件

    wb.save('边框样式示例.xlsx')
    

完整代码示例

from openpyxl import Workbook
from openpyxl.styles import Border, Side# 创建新工作簿
wb = Workbook()
sheet = wb.active# 定义边框样式
thin_border = Side(border_style="thin", color="000000")
double_border = Side(border_style="double", color="FF0000")  # 红色双线# 应用不同边框到单元格
sheet['A1'].border = Border(top=double_border, left=thin_border)  # 顶部双线,左侧细线
sheet['B2'].border = Border(bottom=Side(style="dashed", color="00FF00"))  # 绿色虚线下边框# 批量设置区域边框(A3:D5为细线全边框)
full_border = Border(top=thin_border,bottom=thin_border,left=thin_border,right=thin_border
)
for row in sheet['A3:D5']:for cell in row:cell.border = full_border# 保存文件
wb.save('边框样式示例.xlsx')

边框样式选项

  • 线型border_style):

    • "thin"(细线)
    • "thick"(粗线)
    • "double"(双线)
    • "dashed"(虚线)
    • "dotted"(点线)
    • "hair"(发丝线)
    • "medium"(中等线)
    • "mediumDashed"(中等虚线)
  • 颜色

    • 使用16进制颜色代码(如"FF0000"为红色)。

方法二:使用 XlsxWriter 库(仅限新建文件)

如果不需要修改现有文件,XlsxWriter提供更简洁的API:

  1. 安装库

    pip install xlsxwriter
    
  2. 代码示例

    import xlsxwriterwb = xlsxwriter.Workbook('xlsxwriter_边框.xlsx')
    sheet = wb.add_worksheet()# 定义格式对象
    border_format = wb.add_format({'border': 1,          # 默认细线边框'border_color': 'black','top': 2,             # 顶部加粗'top_color': 'red','bottom': 'double',   # 双线下边框'bottom_color': '#00FF00'
    })sheet.write('A1', '带边框的内容', border_format)
    wb.close()
    

注意事项

  1. 性能优化:批量设置边框时,避免逐单元格操作,可结合循环或样式复制。
  2. 颜色代码:推荐使用16进制RGB值(如"FF0000"),而非颜色名称。
  3. 现有文件修改:若需修改已有文件,优先使用openpyxlXlsxWriter仅支持新建文件)。

通过上述方法,您可以灵活控制Excel单元格的边框样式,满足数据可视化或报表需求。

相关文章:

  • 云图库和黑马点评的项目学习经验
  • 数字IC后端设计实现 | 如何自动删除Innovus 中冗余的hold buffer?
  • NAT/代理服务器/内网穿透
  • SpringBoot整合MQTT实战:基于EMQX构建高可靠物联网通信,从零到一实现设备云端双向对话
  • K8S Ingress 实现金丝雀(灰度)发布
  • NVMe简介1
  • FFMPEG 与 mp4
  • FunASR:语音识别与合成一体化,企业级开发实战详解
  • Turborepo + Vite + Next.js + Shadcn Monorepo 项目构建
  • MoonBit正式入驻GitCode!AI时代的编程语言新星,开启高性能开发新纪元
  • 【面试 · 五】CSS个别重点总结
  • 【内网渗透】——S4u2扩展协议提权以及KDC欺骗提权
  • Xcode报错:“Set `maskView` to `nil` before adding it as a subview of ZFMaskView
  • 嵌入式培训之数据结构学习(三)gdb调试
  • 深入解析京东 item_sku 接口:获取商品SKU信息的详细指南
  • libarchive.so.19丢失
  • 使用libUSB-win32的简单读写例程参考
  • 基于SpringBoot+Vue的房屋租赁管理系统源码包(完整版)开发实战
  • 现代垃圾收集器
  • 【springcloud学习(dalston.sr1)】Ribbon负载均衡(七)
  • 蚊媒传染病、手足口病……上海疾控发布近期防病提示
  • SIFF动画单元公布首批片单:《燃比娃》《凡尔赛玫瑰》等
  • 江西省市场监管局原局长谢来发被双开:违规接受旅游活动安排
  • 哈佛新论文揭示 Transformer 模型与人脑“同步纠结”全过程!AI也会犹豫、反悔?
  • OpenAI与微软正谈判修改合作条款,以推进未来IPO
  • 左娅︱悼陈昊