python - excel 设置样式

文章目录

  • 前言
    • python - excel 设置样式
      • 1. 准备
      • 2. 示例
        • 2.1. 给单元格设置样式"等线"、大小为24磅、斜体、红色颜色和粗体
        • 2.2. 给第二行设置样式"宋体"、大小为16磅、斜体、红色颜色和粗体
        • 2.3. 给第三行数据设置垂直居中和水平居中
        • 2.4. 给第四行设置行高为30
        • 2.5. 给第五行设置列宽为15
        • 2.6. 给A列设置列宽为 30
        • 2.7. 在A1单元格应用边框样式
        • 2.8. 完整demo

前言

  如果您觉得有用的话,记得给博主点个赞,评论,收藏一键三连啊,写作不易啊^ _ ^。
  而且听说点赞的人每天的运气都不会太差,实在白嫖的话,那欢迎常来啊!!!


python - excel 设置样式

1. 准备

准备一个无样式的excel
在这里插入图片描述
在这里插入图片描述

生成demo可以看这里
python- excel 创建/写入/删sheet+花式遍历

2. 示例

2.1. 给单元格设置样式"等线"、大小为24磅、斜体、红色颜色和粗体
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 输入等线 24号,加粗斜体,字体颜色红色。# 直接使用cell的font属性,将Font对象赋值给它# 声明样式bold_italic_24_font = Font(name='等线', size=24, italic=True, color=Color(rgb="FF0000"), bold=True)# 给单元格设置样式newSheet['A1'].font = bold_italic_24_fontwb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.2. 给第二行设置样式"宋体"、大小为16磅、斜体、红色颜色和粗体
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 输入等线 24号,加粗斜体,字体颜色红色。# 直接使用cell的font属性,将Font对象赋值给它# 声明样式bold_italic_16_font = Font(name='宋体', size=16, italic=True, color=Color(rgb="FF0000"), bold=True)# 给第二行设置样式for cell in newSheet[2]:cell.font = bold_italic_16_fontwb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.3. 给第三行数据设置垂直居中和水平居中
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 给第三行设置对齐方式:给第三行数据设置垂直居中和水平居中for cell in newSheet[3]:cell.alignment = Alignment(horizontal='center', vertical='center')wb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.4. 给第四行设置行高为30
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 给第四行设置行高为30newSheet.row_dimensions[4].height = 30wb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.5. 给第五行设置列宽为15
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 给第五行设置列宽为15for column_letter in range(1, newSheet.max_column + 1):if 5 == column_letter:# chr(64 + column_letter)用于将列号的数值转换为列字母标识符newSheet.column_dimensions[chr(64 + column_letter)].width = 15wb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.6. 给A列设置列宽为 30
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 给A列设置列宽为 30newSheet.column_dimensions['A'].width = 30wb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.7. 在A1单元格应用边框样式
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 创建一个Border对象来定义边框样式border = Border(left=Side(style='thin'),  # 左边框right=Side(style='thin'),  # 右边框top=Side(style='thin'),  # 上边框bottom=Side(style='thin')  # 下边框)# 在A1单元格应用边框样式newSheet['A1'].border = borderwb.save(file_path)except Exception as e:print(f"Exception : {e}")

在这里插入图片描述

2.8. 完整demo
import osfrom openpyxl import load_workbook
from openpyxl.styles import Font, Alignment, Color, Border, Sidedef listdir(file_path):paths = os.listdir(file_path)print(f'返回指定目录【{file_path}】下的所有文件和目录名:{os.listdir(file_path)}')return pathsif __name__ == '__main__':path = 'D:\pythonExcel'try:fileName = listdir(path)file_path = os.path.join(path, fileName[0])# 打开已有文件wb = load_workbook(file_path)# 创建一个新的sheetnewSheet = wb["NewSheet"]# 设置新sheet为活动sheetwb.active = newSheet# 输入等线 24号,加粗斜体,字体颜色红色。# 直接使用cell的font属性,将Font对象赋值给它# 声明样式bold_italic_24_font = Font(name='等线', size=24, italic=True, color=Color(rgb="FF0000"), bold=True)bold_italic_16_font = Font(name='宋体', size=16, italic=True, color=Color(rgb="FF0000"), bold=True)# 创建一个Border对象来定义边框样式border = Border(left=Side(style='thin'),  # 左边框right=Side(style='thin'),  # 右边框top=Side(style='thin'),  # 上边框bottom=Side(style='thin')  # 下边框)# 给单元格设置样式newSheet['A1'].font = bold_italic_24_font# 给第二行设置样式for cell in newSheet[2]:cell.font = bold_italic_16_font# 给第三行设置对齐方式:给第三行数据设置垂直居中和水平居中for cell in newSheet[3]:cell.alignment = Alignment(horizontal='center', vertical='center')# 给第四行设置行高为30newSheet.row_dimensions[4].height = 30# 给第五行设置列宽为15for column_letter in range(1, newSheet.max_column + 1):if 5 == column_letter:# chr(64 + column_letter)用于将列号的数值转换为列字母标识符newSheet.column_dimensions[chr(64 + column_letter)].width = 15# 给A列设置列宽为 30newSheet.column_dimensions['A'].width = 30# 在A1单元格应用边框样式newSheet['A1'].border = borderwb.save(file_path)except Exception as e:print(f"Exception : {e}")

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

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

相关文章

日志管理工具Zap笔记

文章目录 Uber-go Zap日志库为什么选择 Zap配置 Zap Logger1. Logger2. SugaredLogger 定制logger1. 将日志写入文件而不是终端2. 将JSON Encoder更改为普通的Log Encoder3. 更改时间编码并添加调用者详细信息4. AddCallerSkip5. 将err日志单独输出到文件 使用Lumberjack进行日…

【安全】 Java 过滤器 解决存储型xss攻击问题

文章目录 XSS简介什么是XSS?分类反射型存储型 XSS(cross site script)跨站脚本攻击攻击场景解决方案 XSS简介 跨站脚本( cross site script )为了避免与样式css(Cascading Style Sheets层叠样式表)混淆,所以简称为XSS。 XSS是一种经常出现在web应用中的计算机安全…

MacOS安装conda

下载conda 地址https://repo.anaconda.com/miniconda/ 选择合适的安装文件下载 运行安装 执行命令安装 bash Miniconda3-latest-MacOSX-arm64.sh 设置环境变量 echo export PATH"/Users/your_user_name/miniconda3/bin:$PATH" >> ~/.zshrc source ~/.zsh…

nextjs构建服务端渲染,同时使用Material UI进行项目配置

一、创建一个next项目 使用create-next-app来启动一个新的Next.js应用,它会自动为你设置好一切 运行命令: npx create-next-applatest 执行结果如下: 启动项目: pnpm dev 执行结果: 启动成功! 二、安装Mater…

C语言中常用的字符串处理函数(strlen、strcpy、strcat、strcmp)

文章目录 写在前面1. strlen1.1 函数介绍1.2 模拟实现 2. strcpy2.1 函数介绍2.2 模拟实现 3. strcat3.1 函数介绍3.2 模拟实现 4. strcmp4.1 函数介绍4.2 模拟实现 写在前面 本篇文章介绍了C语言中常用的字符串处理函数,包括strlen、strcpy、strcat和strcmp。文章…

【vue3+ts】项目初始化

1、winr呼出cmd,输入构建命令 //用vite构建 npm init vitelatest//用cli脚手架构建 npm init vurlatest2、设置vscode插件 搜索volar,安装前面两个 如果安装了vue2的插件vetur,要禁用掉,否则插件会冲突

使用react-router-dom在新标签页打开链接,而不是本页跳转

一般单页面应用&#xff0c;当你使用useNavigate时候的时候&#xff0c;用useNavigate来跳转&#xff0c;只能是在当前页面刷新跳转的&#xff0c;要想单独在一个tab页打开新页面&#xff0c;大概用三种方式。 第一种 使用link标签&#xff0c;配合target实现 <Link to&q…

2023年中国石油催化裂化剂行业供需、竞争格局及市场规模分析[图]

催化裂化是石油炼制过程之一&#xff0c;是在热和催化剂的作用下使重质油发生裂化反应&#xff0c;转变为裂化气、汽油和柴油等的过程。中国原油加工量在这一阶段逐年提升&#xff0c;2022年国内原油加工量67589.7万吨。 2016-2022年中国原油加工量情况 资料来源&#xff1a;国…

linux,write:xxx has messages disabled 与 Ubuntu多用户同时登录的问题 ubuntu 20.04

write&#xff1a;xxx has messages disabled 问题 被这问题折磨了好久&#xff0c;搜都搜不到&#xff0c;还是灵机一动想到的。 很多 帖子说&#xff0c;要使用 mesg y用了还是没有用&#xff0c;后面我登录了很多用户&#xff0c;发现只有root用户可以给别的用户使用write…

el-data-picker限制日期可选范围

<el-date-pickerclass"date"v-model"date"type"date"change"dateChange"value-format"yyyy-MM-dd"format"yyyy-MM-dd"placeholder"选择日期":picker-options"datePickerOptions"></…

【重拾C语言】八、表单数据组织——结构体(类型、类型别名、直接/间接访问;典例:复数、成绩单)

目录 前言 八、结构体 8.1 结构体类型 8.2 结构体类型名 8.2.1 typedef关键字 8.2.1 结构体类型别名 8.3 结构体变量 8.3.1 使用结构体类型引用 8.3.2 使用结构体类型定义 8.3.3 使用typedef定义的结构体类型别名 8.4 访问结构体变量 8.4.1 直接成员选择表达式 8.…

JOSEF约瑟 矿用一般型选择性漏电继电器 LXY2-660 Φ45 JKY1-660

系列型号&#xff1a; JY82A检漏继电器 JY82B检漏继电器 JY82-380/660检漏继电器 JY82-IV检漏继电器 JY82-2P检漏继电器 JY82-2/3检漏继电器 JJKY检漏继电器 JD型检漏继电器 JY82-IV;JY82J JY82-II;JY82-III JY82-1P;JY82-2PA;JY82-2PB JJB-380;JJB-380/660 JD-12…

uni-app 实现考勤打卡功能

一、在页面中引入地图组件 <map id"map" style"width: 100%; height: 100%" :latitude"myLatitude" :longitude"myLongitude" :circles"circles" :markers"markers"> </map>属性名类型说明longitudeN…

VRRP 虚拟路由器冗余协议的解析和配置

VRRP的解析 个人简介 原理和HSRP的差不多&#xff0c;少了一些状态就只有了三种状态 还有不同的就是VRRP严格按照抢占要求 一个VRRP组中具有最高优先级的设备成为Master路由器缺省优先级为100若优先级相同&#xff0c;具有最高接口IP地址最大的路由器成为Master路由器抢占(Pr…

Centos指令合集

2023-10-09 防火墙 开启 systemctl start firewalld自启动 systemctl enable firewalld.service关闭 systemctl stop firewalld禁用 systemctl disable firewalld.service查看状态 systemctl status firewalld

360测试开发技术面试题目

最近面试了360测试开发的职位&#xff0c;将面试题整理出来分享~ 一、java方面 1、java重载和重写的区别 重载overloading 多个方法、相同的名字&#xff0c;不同的参数 重写overwrite 子类继承父类&#xff0c;对方法进行重写 2、java封装的特性 可以改变内部实现&#xff0c;…

UnrealEngine iOS 打包 —— 签名证书(cer、p12)生成

官方文档 docs.unrealengine.com/5.3/zh-CN/setting-up-ios-tvos-and-ipados-provisioning-profiles-and-signing-certificates-for-unreal-engine-projects 打开 ProjectSettings -> Platforms -> iOS 可以看到签名证书配置 需要拓展名为 .cer 和 .p12 的一对证书和密钥…

精益生产与MES生产管理系统相互融合

近年来&#xff0c;精益生产理念在企业管理中越来越受欢迎。它强调以最小的浪费&#xff0c;在最短的时间内&#xff0c;生产出高质量的产品。这一理念的实施手段包括准时制生产方式、适时生产方式等&#xff0c;消除浪费、看板、快换工装等都是精益提高的工具方针。 然而&…

Spark任务优化分析

一、背景 首先需要掌握 Spark DAG、stage、task的相关概念 Spark的job、stage和task的机制论述 - 知乎 task数量和rdd 分区数相关 二、任务慢的原因分析 找到运行时间比较长的stage 再进去看里面的task 可以看到某个task 读取的数据量明显比其他task 较大。 如果是sql 任…

自动售货机销售数据分析与应用

⭐简单说两句⭐ 作者&#xff1a;后端小知识 CSDN个人主页&#xff1a;后端小知识 &#x1f50e;GZH&#xff1a;后端小知识 &#x1f389;欢迎关注&#x1f50e;点赞&#x1f44d;收藏⭐️留言&#x1f4dd; 摘要&#xff1a; 本案例将主要结合自动售货机的实际情况&#xff0…