python 如何對excel中某一列某些值的單元格着色

 

效果:

代碼如下:

import xlwt
import xlrd
from xlutils.copy import copy
#創建execl
def create_execl(file_name):
    wb = xlwt.Workbook()
    ws = wb.add_sheet('Info')
    ws.write(0, 0, "1")
    ws.write(1, 0, "2")
    ws.write(2, 0, "3")
    ws.write(3, 0, "2")
    wb.save(file_name)
#單元格上色
def color_execl(file_name):
    styleBlueBkg = xlwt.easyxf('pattern: pattern solid, fore_colour red;')  # 紅色
    rb = xlrd.open_workbook(file_name)      #打開t.xls文件
    ro = rb.sheets()[0]                     #讀取表單0
    wb = copy(rb)                           #利用xlutils.copy下的copy函數複製
    ws = wb.get_sheet(0)                    #獲取表單0
    col = 0                                 #指定修改的列
    for i in range(ro.nrows):               #循環所有的行
        result = int(ro.cell(i, col).value)
        if result == 2:                     #判斷是否等於2
            ws.write(i,col,ro.cell(i, col).value,styleBlueBkg)
    wb.save(file_name)

if __name__ == '__main__':
    file_name = 't.xls'
    create_execl(file_name)
    color_execl(file_name)

 

發佈了12 篇原創文章 · 獲贊 18 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章