openpyxl操作excel的一些方法
阿新 • • 發佈:2020-12-15
技術標籤:python
一 條件格式
import openpyxl
from openpyxl import styles
from openpyxl.formatting.rule import CellIsRule
otl_file_path = r'test.xlsx'
wb = openpyxl.load_workbook(otl_file_path)
red_color = 'ffc7ce'
red_color_font = 'F0E68C'
# 設定格式樣式
red_fill = styles.PatternFill(start_color=red_color, end_color= red_color, fill_type='solid')
yel_fill = styles.PatternFill(start_color=red_color_font, end_color=red_color_font, fill_type='solid')
# 設定條件的 符號和英文對照關係
{">": "greaterThan",
">=": "greaterThanOrEqual",
"<": "lessThan",
"<=" : "lessThanOrEqual",
"=": "equal",
"==": "equal",
"!=": "notEqual"}
# 設定條件 從K3:M3 大於0的單元格設定成紅色背景
ws_otl.conditional_formatting.add(f'K3:M3',
CellIsRule(operator='>', formula=['0'],fill=red_fill, ))
wb.save(otl_file_path)
二 設定批註
import openpyxl
from openpyxl.comments import Comment
otl_file_path = r'test.xlsx'
wb = openpyxl.load_workbook(otl_file_path)
# 設定批註
comment = Comment('部門規範性名稱', 'author')
comment.width = 200
comment.height = 40
wb.cell('A1', 'B1').comment = comment
wb.save(otl_file_path)
三 凍結視窗, 保護工作簿, 隱藏sheet頁
import openpyxl
otl_file_path = r'test.xlsx'
wb = openpyxl.load_workbook(otl_file_path)
# 凍結視窗
wb.freeze_panes = 'P1'
# 保護工作簿(設定密碼為: 123)
wb.security = WorkbookProtection(workbookPassword='123', lockStructure=True)
# 隱藏sheet頁
wb.sheet_state = 'hidden'
wb.save(otl_file_path)
四 複製sheet頁, 刪除sheet頁,建立sheet頁
import openpyxl
otl_file_path = r'test.xlsx'
wb = openpyxl.load_workbook(otl_file_path)
# 建立sheet頁
wb_create = wb.create_sheet('合併表')
# 複製sheet頁
wb_copy = wb.copy_worksheet(ws_all)
# 刪除sheet頁
wb.remove(wb.worksheets[0])
wb.save(otl_file_path)