/*auto readmore*/ /*auto readmore*/ /* an hien script*/ // an hien password /*an hien ma chuong trinh cong tru */ /*Scrollbox thanh cuon*/ /***Nhung CODE***/ /* dòng xanh dòng trắng */ /* https://cdnjs.com/libraries/prism lay thu vien, can vao ten file ma goi 1. copy link vao vi du:prism-python.min.js 2. ten ngon nua la python */ /*=== New posts ===*/ /*header slider*/ /*=== bai viet lien quan===*/ /*===tabcode===*/

Lập Trình Python Cho Excel/Python For Excel #003 - Màu Chữ, Màu Nền, Kiểu Chữ

NỘI DUNG

Mở file BangDuLieu_ngaunhien.xlsx và thực hiện theo yêu cầu:

- A1 -> C1: font size là 15, kiểu chữ Arial, màu của chữ là màu xanh, màu nền màu vàng
- A2 -> C2: Chữ màu nâu, nền màu xám đâm
- B3: chữ in đậm
- B4: chữ in nghiêng
- B5: chữ gạch chân
- B6 -> B7: Chữ in hoa
- B8 -> B9: Chữ thường
- Cột C nếu giá trị số lớn hơn 30 thì tô màu nền là vàng


THỰC HIỆN

Mở file BangDuLieu_ngaunhien.xlsx và thực hiện theo yêu cầu:

- A1 -> C1: font size là 15, kiểu chữ Arial, màu của chữ là màu xanh, màu nền màu vàng
- A2 -> C2: Chữ màu nâu, nền màu xám đâm
- B3: chữ in đậm
- B4: chữ in nghiêng
- B5: chữ gạch chân
- B6 -> B7: Chữ in hoa
- B8 -> B9: Chữ thường
- Cột C nếu giá trị số lớn hơn 30 thì tô màu nền là vàng

Code:

# === Định dạng font, màu, kiểu chữ
import xlwings as xw

wb = xw.Book(r"C:\tmp\BangDuLieu_ngaunhien.xlsx")
sht = wb.sheets.active
sht = wb.sheets ["Sheet1"]
sht["A1:C1"].font.size = 15
sht["A1:C1"].font.name = "Arial"

# === Kiểu chữ
sht["B3"].font.bold = True
sht["B4"].font.italic = True
sht["B5"].api.Font.Underline = True

range_B = sht["B6:B7"].value
for i in range(len(range_B)):
    sht[f"B{i+6}"].value = range_B[i].upper() # in hoa 
    
range_B = sht["B8:B9"].value
for i in range(len(range_B)):
    sht[f"B{i+8}"].value = range_B[i].lower() # in thường 
    # sht[f"B{i+6}"].value = range_B[i].capitalize() # in hoa chữ đầu tiên

# === Màu chữ
# tham khảo bảng màu https://docs.microsoft.com/en-us/office/vba/api/excel.colorindex
sht["A1"].api.Font.ColorIndex = 5 # màu xanh
sht["A2:C2"].api.Font.ColorIndex = 30 # màu nâu

# === Màu nền
# tham khảo màu https://www.rapidtables.com/web/color/RGB_Color.html
sht["A1"].color = (255,255,0) # vàng
sht["A2:C2"].color = (160,160,160) # xám

# === Màu nền theo hàng chẵn lẻ
for i in range(3,11):
    if sht[f"A{i}"].value % 2 == 0:
        sht[f"A{i}:C{i}"].color = (224,224,224) #xám
    else:
        sht[f"A{i}:C{i}"].color = (255,255,255)

# === màu nền có điều kiện - Conditional Formattting Highlight
sht["C3:C11"].color = (255,255,255) # trắng
column_number = [3] # cột C
check_number = 30 # số cần kiểm tra
for j in column_number:
    for i in range(11,2,-1):
        if sht.range(i, j).value > check_number:
            sht.range(i,j).color = (255,255,200) # nếu thỏa mãn điều kiện thì tô màu nền


Tham khảo bảng màu chữ tại và màu nền tại đây

Kết Quả


Xong!

No comments:

Post a Comment

/*header slide*/