Bạn muốn tạo ra những bảng tính Excel không chỉ chứa dữ liệu mà còn đẹp mắt và dễ đọc? Bài viết này sẽ hướng dẫn bạn cách sử dụng thư viện Openpyxl trong Python để **định dạng ô Excel** một cách chuyên nghiệp. Từ việc **định dạng số**, thay đổi **màu sắc**, đến tùy chỉnh **font chữ** và **áp dụng các kiểu viền**, bạn sẽ nắm vững mọi kỹ năng cần thiết để nâng tầm bảng tính của mình.
Việc **định dạng ô** không chỉ là về mặt thẩm mỹ. Nó còn giúp người đọc dễ dàng hiểu và phân tích dữ liệu. Một bảng tính được định dạng tốt sẽ:
Ví dụ, bạn có thể sử dụng **định dạng số** để hiển thị tiền tệ với ký hiệu thích hợp, hoặc **định dạng ngày tháng** để đảm bảo tính nhất quán. **Màu sắc** có thể được sử dụng để đánh dấu các ô có giá trị đặc biệt (ví dụ: doanh thu vượt chỉ tiêu, chi phí vượt ngân sách).
Trước khi bắt đầu, bạn cần cài đặt thư viện Openpyxl. Sử dụng pip, trình quản lý gói của Python:
pip install openpyxl
Sau khi cài đặt, bạn có thể nhập thư viện vào script Python của mình:
from openpyxl import Workbook
from openpyxl.styles import Font, Color, PatternFill, Border, Side, Alignment
Bạn có thể thay đổi **font chữ**, **kích thước**, **màu sắc**, và **kiểu chữ** (in đậm, in nghiêng, gạch chân) của một ô. Ví dụ:
wb = Workbook()
ws = wb.active
cell = ws['A1']
cell.value = "Ví dụ về font chữ"
font = Font(name='Arial', size=12, bold=True, italic=True, color="FF0000") #Đỏ
cell.font = font
wb.save("font_example.xlsx")
**Định dạng số** cho phép bạn hiển thị số theo nhiều cách khác nhau, chẳng hạn như tiền tệ, phần trăm, ngày tháng. Ví dụ:
wb = Workbook()
ws = wb.active
cell = ws['A1']
cell.value = 1234.56
cell.number_format = '#,##0.00' # Định dạng số với dấu phẩy phân cách hàng nghìn và 2 chữ số thập phân
#Các định dạng có sẵn có thể tham khảo ở trên
wb.save("number_format_example.xlsx")
Bạn có thể thay đổi **màu nền** của ô và **màu chữ** để làm nổi bật thông tin. Ví dụ:
wb = Workbook()
ws = wb.active
cell = ws['A1']
cell.value = "Ô màu mè"
fill = PatternFill(fill_type='solid', fgColor="DDDDDD") # Màu xám nhạt
cell.fill = fill
font = Font(color='FF0000') # Màu đỏ
cell.font = font
wb.save("color_example.xlsx")
Bạn có thể thêm **viền** cho ô để tạo sự phân biệt rõ ràng giữa các ô. Ví dụ:
wb = Workbook()
ws = wb.active
cell = ws['B2']
ws.column_dimensions['B'].width = 20
thin = Side(border_style="thin", color="000000")
border = Border(top=thin, left=thin, right=thin, bottom=thin)
cell.border = border
wb.save("border_example.xlsx")
**Căn chỉnh** văn bản trong ô theo chiều ngang và chiều dọc để cải thiện khả năng đọc. Ví dụ:
wb = Workbook()
ws = wb.active
cell = ws['A1']
cell.value = "Căn giữa"
alignment = Alignment(horizontal='center', vertical='center')
cell.alignment = alignment
wb.save("alignment_example.xlsx")
Định dạng có điều kiện cho phép bạn tự động áp dụng các kiểu định dạng dựa trên giá trị của ô. Ví dụ, bạn có thể tô màu đỏ cho các ô có giá trị âm, hoặc tô màu xanh cho các ô có giá trị lớn hơn một ngưỡng nhất định. Ví dụ:
from openpyxl import Workbook
from openpyxl.styles import PatternFill
from openpyxl.styles.differential import DifferentialStyle
from openpyxl.formatting.rule import Rule
wb = Workbook()
ws = wb.active
bg_red = PatternFill(fill_type='solid', fgColor="FFC7CE")
dxf = DifferentialStyle(fill=bg_red)
rule = Rule(type="expression", dxf=dxf, stopIfTrue=True)
rule.formula = ['$A1<0'] # Nếu giá trị ở cột A nhỏ hơn 0
ws.conditional_formatting.add("A1:A10", rule)
wb.save("conditional_formatting_example.xlsx")
Sau khi đã định dạng xong, hãy lưu lại bảng tính của bạn:
wb.save("output.xlsx")
Mở file Excel vừa tạo để xem kết quả và chiêm ngưỡng những thay đổi mà bạn vừa thực hiện.
Sử dụng Openpyxl để **định dạng ô Excel** là một kỹ năng quan trọng giúp bạn tạo ra những bảng tính chuyên nghiệp và dễ đọc. Bằng cách kết hợp các kiểu định dạng khác nhau, bạn có thể biến những bảng tính khô khan thành những công cụ trực quan và hiệu quả. Hãy thử nghiệm và khám phá thêm nhiều tính năng khác của Openpyxl để trở thành một chuyên gia Excel thực thụ!
Bài viết liên quan