Menu

Tự động hóa xử lý dữ liệu Excel với Python: Hướng dẫn đọc và ghi file XLSX

Từ Toàn Trang 10/03/2026 05:03 402 lượt xem 1 trả lời

Chào các bạn trong diễn đàn Sheet & Excel,

Dạo này mình có làm việc nhiều với Python để tự động hóa các tác vụ liên quan đến Excel. Hôm nay, mình muốn chia sẻ một chút kinh nghiệm về cách đọc và ghi dữ liệu từ file Excel (định dạng .xlsx) bằng Python, sử dụng thư viện openpyxl. Đây là một thư viện rất mạnh mẽ và dễ sử dụng.

1. Cài đặt thư viện:

Nếu chưa có, bạn cài đặt bằng pip:

pip install openpyxl

2. Đọc dữ liệu từ file Excel:

Giả sử bạn có một file tên là data.xlsx với dữ liệu ở sheet đầu tiên. Bạn có thể đọc toàn bộ dữ liệu hoặc từng ô, từng dòng như sau:

from openpyxl import load_workbook

workbook = load_workbook(filename='data.xlsx')
sheet = workbook.active # Lấy sheet đang hoạt động

# Đọc một ô cụ thể (ví dụ: ô A1)
cell_value = sheet['A1'].value
print(f'Giá trị ô A1: {cell_value}')

# Đọc tất cả các hàng
for row in sheet.iter_rows(min_row=1, max_col=sheet.max_column, max_row=sheet.max_row):
    row_values = [cell.value for cell in row]
    print(row_values)

3. Ghi dữ liệu vào file Excel:

Bạn có thể tạo một file mới hoặc ghi đè lên file cũ. Dưới đây là ví dụ tạo một file mới và ghi dữ liệu:

from openpyxl import Workbook

workbook = Workbook()
sheet = workbook.active
sheet.title = 'BaoCao Mới'

sheet['A1'] = 'Tên sản phẩm'
sheet['B1'] = 'Số lượng'

data_to_write = [
    ('Sản phẩm A', 100),
    ('Sản phẩm B', 150),
    ('Sản phẩm C', 200)
]

for row_data in data_to_write:
    sheet.append(row_data)

workbook.save(filename='bao_cao_moi.xlsx')
print('Đã tạo và ghi dữ liệu vào bao_cao_moi.xlsx thành công!')

Với những đoạn code đơn giản này, bạn có thể bắt đầu tự động hóa việc xử lý dữ liệu Excel bằng Python. Hy vọng bài viết nhỏ này hữu ích cho các bạn đang muốn tìm hiểu về sự kết hợp giữa Excel và Python.

Có bạn nào đã từng dùng Python để xử lý file Excel chưa? Chia sẻ thêm kinh nghiệm nhé!

5

Hay quá bạn ơi! Mình cũng đang mày mò với openpyxl để xử lý đống báo cáo hàng tháng. Bạn có thể chia sẻ thêm về cách xử lý nhiều sheet trong một file XLSX không? Đôi khi mình cần đọc dữ liệu từ các sheet khác nhau và gom lại.

2

Bạn cần đăng nhập để trả lời chủ đề này.

Đăng nhập Đăng ký