Menu

Tự động hóa việc chuyển đổi và làm sạch dữ liệu ngày tháng trong Power Query

Hầu Khắc Hải 05/06/2026 23:49 217 lượt xem 2 trả lời

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

Mình thường xuyên phải xử lý các báo cáo dữ liệu từ nhiều nguồn khác nhau, và một trong những vấn đề nan giải nhất là định dạng ngày tháng 'loạn xạ'. Có lúc là dd/mm/yyyy, có lúc lại là mm-dd-yyyy, thậm chí có những ô chỉ là chuỗi text nhìn không ra ngày tháng gì cả. Việc làm thủ công từng ô thì mất thời gian khủng khiếp và dễ sai sót.

Gần đây, mình có mày mò và áp dụng Power Query để giải quyết triệt để vấn đề này. Mình muốn chia sẻ một quy trình tự động hóa mà mình đã xây dựng, hy vọng sẽ giúp ích cho các bạn đang gặp tình huống tương tự.

Quy trình xử lý dữ liệu ngày tháng với Power Query:

  • Bước 1: Đọc dữ liệu vào Power Query. Dù là từ file Excel, CSV, hay Web, Power Query đều xử lý tốt.
  • Bước 2: Xác định cột chứa ngày tháng. Chọn cột cần xử lý.
  • Bước 3: Chuyển đổi kiểu dữ liệu (Change Type). Đây là bước quan trọng. Thay vì chọn trực tiếp Date, mình thường chọn Text trước để Power Query không 'ép' sai định dạng.
  • Bước 4: Làm sạch và chuẩn hóa. Sử dụng các hàm như Text.Clean để loại bỏ khoảng trắng thừa, sau đó dùng Text.Split hoặc Text.PositionOf để tách các phần ngày, tháng, năm nếu cần.
  • Bước 5: Chuyển đổi sang định dạng Date chuẩn. Sau khi đã tách và làm sạch, mình dùng hàm Date.FromText hoặc Date.From(Timestamp.FromText(...)) với định dạng rõ ràng (ví dụ: #"dd/MM/yyyy") để đảm bảo Power Query hiểu đúng.
  • Bước 6: Xử lý lỗi (Error Handling). Dùng Replace Errors để thay thế các giá trị không chuyển đổi được bằng null hoặc một giá trị mặc định nào đó.

Cách này giúp mình tiết kiệm rất nhiều thời gian và đảm bảo tính nhất quán của dữ liệu. Nếu bạn nào có kinh nghiệm hay thủ thuật hay hơn, đừng ngần ngại chia sẻ nhé!

3

Cảm ơn bạn đã phản hồi và đặt câu hỏi rất sát với vấn đề!

Với những ô "nhìn không ra ngày tháng" thực sự, mình thường kết hợp thêm một vài bước:

  • Đầu tiên, mình sẽ thử chuyển đổi sang kiểu Date ngay. Nếu lỗi thì coi như dữ liệu đó không phải ngày tháng.
  • Với những ô lỗi, mình sẽ kiểm tra xem nó có phải là định dạng số hay không. Nếu là số, mình sẽ thử quy đổi dựa trên một vài quy tắc phổ biến (ví dụ: số ngày kể từ năm 1900).
  • Cuối cùng, nếu vẫn không được thì mình sẽ để nguyên hoặc đánh dấu để xử lý thủ công sau.

Quan trọng là mình tách bạch được các trường hợp để xử lý cho phù hợp, tránh làm sai lệch dữ liệu.

2

Hay quá bạn ơi! Đúng là vấn đề định dạng ngày tháng là nỗi ám ảnh của bao người làm Excel. Mình cũng hay gặp cảnh "dở khóc dở cười" với các file báo cáo từ nhiều nguồn về.

Bạn có thể chia sẻ cụ thể hơn về các bước bạn đã làm trong Power Query không? Đặc biệt là cách xử lý những ô "nhìn không ra ngày tháng" ấy, mình tò mò lắm!

Cảm ơn bạn đã chia sẻ kinh nghiệm quý báu!

5

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

Đăng nhập Đăng ký