今天帮朋友写一个代码批量修改表格的格式。发现openpyxl比较适合,而且网上有很多参考的脚本。这个是我自己独立完成的,当然也是积累了很多脚本以后,才有思路和方法。用了一下午完成的。话不多说了,直接上代码。
**这里我把很多种格式都列出来了,而且,指定特定颜色区域进行修改。而且为了好玩,每次随机变换格式。**非黄色的额区域都被随机修改过了。其实,只有黄色区域那里没有被修改。下面是代码:
import xlrd
import xlwt
#from xlutils.copy import copy
import time
import re
import openpyxl
from openpyxl.styles import Font, colors, Alignment
import random
def openfile(filename):
#filename='测试1.xlsx'
global sheetnum , names, workbook
workbook = xlrd.open_workbook(filename) # 读取原始excel文件
sheetnum = workbook.nsheets
names = workbook.sheet_names()
print(sheetnum, len(names))
# 2、配置字体格式为:样式(Times New Roman)、尺寸(11)、斜体(flase)、颜色(黑色)、粗体(flase),这里可以根据自己需求修改
#font_style = Font(name='Times New Roman', size=11, italic=False, color='FF000000', bold=False)
#=====常用字体颜色配置数值===========
# BLACK = 'FF000000'
# WHITE = 'FFFFFFFF'
# RED = 'FFFF0000'
# DARKRED = 'FF800000'
# BLUE = 'FF0000FF'
# DARKBLUE = 'FF000080'
# GREEN = 'FF00FF00'
# DARKGREEN = 'FF008000'
# YELLOW = 'FFFFFF00'
# DARKYELLOW = 'FF808000'
#====================================
# 设置字体格式
#sheet1.cell(row=i,column=1).font=font_style
# 设置字体对齐方式,这里为垂直居中跟水平居中,除了center,还可以用right、left等参数
#sheet1.cell(row=i,column=1).alignment = Alignment(horizontal='center', vertical='center')