2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > Python处理Excel实战4- 设置行高列宽边框填充单元格增加/删除行列冻结窗格

Python处理Excel实战4- 设置行高列宽边框填充单元格增加/删除行列冻结窗格

时间:2022-06-18 11:12:39

相关推荐

Python处理Excel实战4- 设置行高列宽边框填充单元格增加/删除行列冻结窗格

本文将分小模块,单独介绍如何用Python来代替Excel中如下操作:

设置行高列宽

设置边框

填充单元格

增加/删除行列,移动单元格

冻结窗格

提示:每个小模块可以单独运行,作者均在本地可正常实现。

一、设置行高列宽

利用Python来进行Excel的行高和列宽设置操作。

#导入需要的模块import openpyxlwb = openpyxl.Workbook()# 新生成一个工作表,工作表名默认是Sheetsheet = wb.activesheet["A1"] = "Tall row"sheet["B2"] = "Wide column"# 这里行高单位是磅,列宽单位是字符sheet.row_dimensions[1].height = 70sheet.column_dimensions["B"].width=20wb.save("dimensions1.xlsx")

二、设置边框

根据需求,对需要的区域加上自己想要的边框。

# 导入需要的模块,设置边框会用到Border、Sideimport openpyxlfrom openpyxl.styles import Border,Sideborder = Border(left=Side(border_style="thin",color="000000"),right=Side(border_style="thin",color="000000"),top=Side(border_style="thin",color="000000"),bottom=Side(border_style="thin",color="000000"))# 载入已有的文件wb = openpyxl.load_workbook("dimensions1.xlsx")ws = wb["Sheet"]# 对单个单元格进行设置边框ws["A1"].border = border# 可以对某个单元格设置边框,也可以对某个区域进行设置边框#这里对A1:B3区域进行设置边框for x in range(3):for y in range(2):ws.cell(row = x+1,column = y+1).border = borderwb.save("dimensions1.xlsx")

三、填充单元格

用Python来实现Excel中对单元格填充颜色的操作。

import openpyxlfrom openpyxl.styles import PatternFillfrom openpyxl.styles import GradientFill# 进行效果设置# ’00FF00‘表示绿色,"000000"表示黑色,‘FFFFFF"表示白色,"FF0000"表示红色,"0000FF"表示蓝色,"FFFF00"表示黄色red_fill = PatternFill(fill_type = "solid",fgColor = "FFFF00")red2green_fill = GradientFill(stop=("FF0000","00FF00"))wb = openpyxl.load_workbook("dimensions1.xlsx")ws = wb["Sheet"]# A1进行纯色填充,B2进行渐近填充ws["A1"].fill = red_fillws["B2"].fill = red2green_fillwb.save("dimensions1.xlsx")

四、增加删除行列,移动单元格区域

用Python实现Excel中增加或者删除行、列的操作,并对单元格区域进行移动操作

# 导入openpyxl,新生成一个表格,并在A1:C3区域写入数据import openpyxlwb = openpyxl.Workbook()sheet = wb.activesheet["A1"] = 1sheet["A2"] = 2sheet["A3"]=3sheet["B1"] = 4sheet["B2"] = 5sheet["B3"]=6sheet["C1"] = 7sheet["C2"] = 8sheet["C3"] = 9# 在第2行插入一行,在第2列插入一列sheet.insert_rows(2)sheet.insert_cols(2)# 删除第2行、第2列sheet.delete_rows(1)sheet.delete_cols(1)#将区域「B2:C3」分别左移1列上移1行。注意:移动将覆盖目标区域已有的数据。sheet.move_range("B2:C3",rows=-1,cols=-1)wb.save("insert_delete.xlsx")

五、冻结窗格

如果Excel行数较多,下拉的时候为了显示标题行,会需要将前面的行进行冻结。

import openpyxl# 直接载入上面生成的文件wb = openpyxl.load_workbook("dimensions1.xlsx")sheet = wb.active# 利用Worksheet对象的freeze_panes属性,冻结前两行# 如果这里设置B3则会冻结B3单元格上面的所有行和左边的列sheet.freeze_panes ="A3"wb.save("dimensions1.xlsx")

至此,本文用Python完成了Excel中的设置行高列宽、设置边框 、填充单元格 、增加/删除行列和移动单元格、冻结窗格的操作。

欲知更多操作,且看下回分解。。。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。