Chào mọi người,
Dạo này mình đang thử nghiệm tự động hóa một số quy trình làm việc với Excel và phát hiện ra cách kết hợp Python với Google Sheets API khá hay. Cụ thể là mình muốn tự động cập nhật dữ liệu từ một file Excel nội bộ lên một bảng tính Google Sheets dùng chung cho team. Thay vì phải copy-paste thủ công mỗi lần có thay đổi, mình viết một script Python để làm việc này.
Công cụ chính mình dùng là thư viện gspread và oauth2client của Python. Nó giúp mình tương tác với Google Sheets rất dễ dàng, như đọc, ghi, hay cập nhật dữ liệu.
Các bước cơ bản mình làm:
- Cài đặt thư viện:
pip install gspread oauth2client - Thiết lập Google Cloud Project và lấy file credentials.json.
- Viết script Python để kết nối tới Google Sheet và ghi dữ liệu từ file Excel của mình vào đó.
Ví dụ đoạn code nhỏ để ghi dữ liệu từ một DataFrame Pandas vào một sheet:
import gspread
import pandas as pd
# Khởi tạo client
gc = gspread.service_account(filename='credentials.json')
# Mở spreadsheet và worksheet
sheet = gc.open('Tên_Bảng_Tính_Của_Bạn').worksheet('Tên_Worksheet')
# Đọc dữ liệu từ Excel vào Pandas DataFrame (ví dụ)
df = pd.read_excel('du_lieu_cua_ban.xlsx')
# Cập nhật dữ liệu vào sheet
sheet.update([df.columns.values.tolist()] + df.values.tolist())
Cách này giúp dữ liệu luôn được cập nhật real-time cho mọi người trong team, rất tiện lợi. Không biết có anh em nào đã áp dụng cách này hoặc có giải pháp nào khác tương tự không, chia sẻ thêm cho mình học hỏi với ạ?