Chào các anh chị em trong diễn đàn,
Dạo này mình thường xuyên phải làm việc với các file dữ liệu mà các cột thông tin được gom lại thành một ô duy nhất, dùng các ký tự phân cách như dấu chấm phẩy (;), dấu gạch ngang (-), hoặc thậm chí là các ký tự lạ mà đôi khi không phải là dấu phẩy hay chấm phẩy thông thường. Ví dụ: "Sản phẩm A; Sản phẩm B; Sản phẩm C" hoặc "Mã SP1-Mã SP2-Mã SP3".
Việc này gây khó khăn khi muốn phân tích từng mục riêng lẻ. Mình đã thử dùng tính năng Text to Columns nhưng đôi khi ký tự phân cách không cố định hoặc quá phức tạp để thiết lập.
Gần đây, mình có tìm hiểu và phát hiện ra một cách khá hay để xử lý vấn đề này bằng Power Query. Cách này cho phép mình định nghĩa ký tự phân cách, kể cả khi nó không chuẩn và tự động tách thành các dòng riêng biệt. Rất hữu ích cho việc làm sạch và cấu trúc lại dữ liệu.
Đây là các bước cơ bản mình hay làm:
- Chọn vùng dữ liệu cần xử lý.
- Vào tab Data >> From Table/Range để mở Power Query Editor.
- Trong Power Query Editor, chọn cột chứa dữ liệu dạng text.
- Vào tab Home >> Split Column >> By Delimiter.
- Trong hộp thoại hiện ra, chọn Custom và nhập ký tự phân cách của bạn vào ô.
- Nhấn OK.
- Nếu muốn mỗi mục thành một dòng riêng, bạn chọn lại cột vừa tách, vào Split Column >> Advanced options >> chọn Rows trong mục Split into.
- Cuối cùng, nhấn Close & Load để đưa dữ liệu đã xử lý về Excel.
Cách này rất linh hoạt, đặc biệt khi dữ liệu nguồn không được chuẩn chỉnh. Có anh chị em nào có kinh nghiệm hay mẹo khác để xử lý dạng dữ liệu này không, chia sẻ thêm cho mọi người cùng học hỏi ạ?