Python 设置excel边框、背景填充色、字体颜色、对齐方式、设置超链接(openpyxl)

导入所需的库

from openpyxl import Workbook,load_workbook #导入所需的库
from openpyxl.styles import *
from openpyxl.utils import get_column_letter, column_index_from_string  #列字母数字互相转换,调整行高列宽需使用

读取现存.xlsx文件

wb=load_workbook(r'C:\Users\s\Desktop\设置单元格格式\SCT-I10A-B301-LABAE-2.xlsx')  #载入excel文件,仅支持.xlsx

设置单元格格式

sheetname=wb.sheetnames  #获取所有的sheet名称
sheet1=wb['血常规'] #获取其中一个sheet
for row in sheet1.rows:  #循环每一行
	print(row[0].value)  #输出每一行第一个值
    row[0].fill=PatternFill('solid',fgColor=Color('ffff00'))  #每行第一个单元格填充颜色
    row[0].border=Border(style='thin',color=Color('00000000'))  #设置边框#  'medium' 中粗#  'thin'  细#  'thick'  粗#  'dashed'  虚线#  'dotted'  点线
    row[0].alignment = Alignment(horizontal='center', vertical='center')  #对齐方式(centor、left、right)
    row[0].font=Font(color=Color(rgb='00000000'),name='宋体',size=20,bold=True,italic=True)  #文字颜色、字体、加粗、倾斜、字号
for n in range(1,sheet1.max_column+1): #循环所有列
    col=sheet1.column_dimensions[get_column_letter(n)] #列序号转换为字母才可使用
    col.width=15  #列宽
for n in range(1,sheet1.max_row+1): #循环所有行
    row=lb1.row_dimensions[n]  #行高,可直接使用数字
    row.height=10

常用方法/函数

row=sheet1.max_row
col=sheet1.max_column
for i in lb1.iter_cols(min_col=3,max_col=3):  #循环第X列到第X列
	continue
sheet1['A1'].value='=hyperlink("#血生化!A1","名称")'

结尾Save

wb.save(r'C:\Users\s\Desktop\设置单元格格式\SCT-I10A-B301-LABAE-2.xlsx')

你可能感兴趣的:(笔记,python)