對Excel表格處理非常方便,本文專門對Excel單元格樣式設置進行總結,日常用到的設置基本都可以用庫完成。
創建一個表格
是第三方庫,如果你還沒有安裝,輸入下方命令安裝。
pip
在開始設置單元格前,先創建一個excel表格,下方代碼可以新建一個Excel表格,并寫入內容。
# =utf-8
# 創建一個excel表格對象
wb = .
# 獲取當前活躍的sheet頁,默認就是第一個sheet頁
ws = wb.
# 在表格的單元格中寫入內容
ws.cell(row= 2, = 3).value = '小斌哥ge'
ws.cell(row= 2, = 4).value = '小斌哥ge'
# 處理完成后保存表格,會在當前目錄生成一個excel文件
wb.save(= 'cell.xlsx')
# 關閉表格對象
wb.close
效果:
代碼含義參考注釋,我在兩個相鄰的單元格中寫入了相同的內容,后面的代碼對一個單元格設置樣式,另一個單元格不做處理,方便對比。
給單元格寫入內容的方式有兩種,一種是給cell的value屬性賦值,如上面的代碼,另一種是用cell的參數設置,如ws.cell(row=2, =3, value='xxx'),兩種方式結果一樣。
本文后面的代碼全部都添加在單元格寫入內容后,保存內容(wb.save)前,順序不能弄反了。(導包的代碼可以統一放到前面)
單元格字體和文字樣式
.
# 設置字體和文字樣式
font = Font(name= "微軟雅黑", size= 12, color= '', bold= True,
= True, = '', = False)
ws.cell(row= 2, = 3).font = font
效果:
字體和文字樣式使用Font類設置,賦值給cell的font屬性。
Font類常用參數說明:
設置單元格高和寬
# 設置寬高
# 中指定要設置高度的行
ws.[ 2]. = 50
# 中指定要設置寬度的列
ws.[ 'C'].width = 20
效果:
單元格的高和寬不是按單元格設置,而是按行和按列設置,因為Excel中同一行的高度和同一列的寬度相同。
設置方法:
注意,指定行時使用數字,指定列時使用大寫字母。這與Excel的行列編號一致。
單元格對齊方式
.
# 設置內容的對齊方式
align = (= 'left', = '', = 0,
= True, = True, = 1)
ws.cell(row= 2, = 3). = align
效果:
單元格對齊方式使用類設置,賦值給cell的屬性。
類常用參數說明:
單元格填充顏色
.
# 設置單元格填充顏色和樣式
= (= '', = "", = '')
ws.cell(row= 2, = 3).fill =
效果:
單元格填充顏色使用類設置,賦值給cell的fill屬性。
類參數說明:
類還有三個參數,與上面的三個參數作用是重復的,等價于,等價于,等價于。單元格設置的好幾個類都有這種參數重復的情況,其他類就不重復介紹了。
單元格填充漸變顏色
.
# 模式,根據stop設置的多個顏色漸變填充,設置順時針的旋轉角度
# = (type='', =30,
# stop=('', '', ''))
# path模式,根據stop設置的多個顏色從左上角至右下角、由內至外填充,
# left,right,top,設置上下左右距離邊框的距離百分比
= (type= 'path', left= 0.1, right= 0.1, top= 0.1, = 0.1,
stop=( '', '', ''))
# ws.cell(row=2, =3).fill =
效果:
模式
path模式
單元格填充漸變顏色使用類設置,賦值給cell的fill屬性。
類參數說明:
模式:根據stop設置的多個顏色從左至右漸變填充。
path模式:根據stop設置的多個顏色從左上角至右下角、由內至外漸變填充。
設置單元格邊框樣式
. ,
# 設置線條的樣式和顏色
side = Side(style= "thick", color= "")
# 設置單元格的邊框線條
= (top=side, =side, left=side, right=side)
ws.cell(row= 2, = 3). =
效果(為了顯示得更明顯,先將顏色填充的代碼注釋掉):
單元格邊框樣式使用類設置,賦值給cell的屬性。邊框線條的樣式使用Side類設置,傳給類中的參數。
Side類參數說明:
類常用參數說明:
注意,設置單元格邊框樣式時,前面設置單元格對齊方式中的單元格旋轉參數會影響邊框的角度,可以根據需要配合修改,通常設置為0。
類中,還有一些其他參數,設置整個單元格的邊框,設置垂直方向,設置水平方向,設置對角線, 設置對角線的角度,不過有些版本不支持這些參數。所以,統一使用上下左右就行了,而且這樣可以給不同邊設置不一樣的 樣式。
使用內置樣式
# 使用內置樣式
ws.cell(row= 2, = 3).style = 'Title'
效果:
內置了很多設置好的樣式,可以直接賦值給cell的style屬性。
可以用的內置樣式有:
提供的 樣式非常多,可以慢慢嘗試。
當然,也可以自定義樣式,利用前面介紹的方式定義好字體、對齊方式等,然后借助類,將前面設置的樣式傳入類中生成一個實例,然后賦值給cell的style屬性。受篇幅限制就不再詳細演示了。
.
此外,也可以將前面設置好的各種樣式封裝到一個函數中,重復調用,與自定義樣式的效果異曲同工。
合并單元格
ws.cell(row= 5, = 5).value = '秦'
ws.cell(row= 5, = 6).value = 'A'
ws.cell(row= 5, = 7).value = 'B'
ws.cell(row= 5, = 8).value = 'W'
ws.cell(row= 6, = 5).value = 'C'
ws.cell(row= 6, = 6).value = 'D'
ws.cell(row= 6, = 7).value = 'E'
ws.cell(row= 6, = 8).value = 'W'
# 合并單元格
ws.(= 5, = 5, = 6, = 7)
# ws.(='E5:G6')
效果:
在合并前,先在表格中寫入一些內容,然后對其中的部分單元格進行合并。
合并單元格使用ws.方法,參數介紹:
合并單元格后,除了左上角的單元格的值保留,其他單元格的值都會被刪除,并且其他單元格都變成了只讀(read-only)單元格,不能寫入內容。
給合并后的單元格設置前文介紹的各種樣式時,字體、對齊方式、顏色填充用左上角的單元格設置,高寬按行列設置,邊框樣式要依次對每一個被合并的處于邊緣的單元格設置。
取消合并單元格
# 取消合并單元格
ws.(= 5, = 5, = 6, = 7)
# ws.(='E5:G6')
效果:
取消合并單元格使用ws.方法,參數與ws.方法完全一樣。
取消合并后,合并單元格時被刪除的內容不能恢復,除了左上角的單元格,其他單元格的內容為空,可以重新寫入內容。
總結
本文完整總結了用設置Excel單元格樣式的知識,全是干貨,非常值得收藏。
文中用一個單元格做演示,實際使用時經常需要批量操作,這個時候加個for循環excel背景顏色設置excel背景顏色設置,改變cell中的row, 值,就可以批量處理了。批量處理的方法還有很多,可以因地制宜。
本文簡單易學,很多地方比官方文檔還詳細,希望對你有幫助,期待你的三連。
參考文檔:
[1] 官方文檔:#cell-
自動化辦公我還是非常推薦下面這幾本書的,有需要的同學可以公眾號后臺咨詢小助手。公眾號:后臺輸入:小助手 ,暗號(自動化書).
入門: 最全的零基礎學的問題 | 零基礎學了8個月的 |實戰項目 | 學就是這條捷徑
干貨:爬取豆瓣短評,電影《后來的我們》 | 38年NBA最佳球員分析 |從萬眾期待到口碑撲街!唐探3令人失望 | 笑看新倚天屠龍記 | 燈謎答題王 | 用做個海量小姐姐素描圖 | 碟中諜這么火,我用機器學習做個迷你推薦系統電影
趣味:彈球游戲 | 九宮格 | 漂亮的花 | 兩百行《天天酷跑》游戲!
AI:會做詩的機器人 | 給圖片上色 | 預測收入 | 碟中諜這么火,我用機器學習做個迷你推薦系統電影
小工具: Pdf轉Word,輕松搞定表格和水??! | 一鍵把html網頁保存為pdf! |再見PDF提取收費! | 用90行代碼打造最強PDF轉換器,word、PPT、excel、、html一鍵轉換 | 制作一款釘釘低價機票提示器! |60行代碼做了一個語音壁紙切換器天天看小姐姐! |