Chào mọi người,
Dạo này mình hay làm việc với dữ liệu mà sếp gửi về, mà toàn ở dạng 'bảng' lộn xộn. Ví dụ như thế này:
Tên sản phẩm | Số lượng | Đơn giá -------------------------------------- Sữa tươi | 10 | 25.000 Bánh mì | 20 | 5.000 Trái cây | 5 | 50.000
Cái khó là đôi khi mình cần ghép các thông tin này lại thành một chuỗi duy nhất để đưa vào báo cáo hoặc gửi đi. Ví dụ: "Sữa tươi - 10 - 25.000; Bánh mì - 20 - 5.000; Trái cây - 5 - 50.000".
Hồi trước mình cứ phải ngồi copy-paste rồi dùng hàm CONCATENATE hoặc ký tự '&' để nối, mất cả buổi. Nhưng gần đây mình khám phá ra cách dùng Power Query để làm việc này siêu nhanh và hiệu quả.
Cách làm như sau:
- Chọn vùng dữ liệu, vào tab Data -> From Table/Range.
- Trong cửa sổ Power Query Editor, chọn các cột bạn muốn nối (ví dụ: Tên sản phẩm, Số lượng, Đơn giá).
- Vào tab Add Column -> Custom Column.
- Trong ô Formula, nhập công thức nối chuỗi. Ví dụ, để nối 3 cột với dấu " - " ở giữa và dấu "; " giữa các dòng, bạn nhập:
Text.Combine({[Tên sản phẩm], Text.From([Số lượng]), Text.From([Đơn giá])}, " - ")Lưu ý: Cần ép kiểu số sang Text bằngText.From(). - Sau đó, bạn có thể chọn cột tùy chỉnh vừa tạo, chuột phải -> Drill Down để lấy ra giá trị dạng chuỗi, hoặc copy nó ra.Hoặc bạn có thể chọn các cột ban đầu, chuột phải -> Remove Columns, rồi vào tab Home -> Close & Load To... để đưa kết quả ra Excel.Nếu muốn nối các dòng thành một chuỗi duy nhất, bạn có thể dùng chức năng Group By sau khi tạo cột tùy chỉnh, rồi dùng hàm
Text.Combinetrên cột tùy chỉnh đó với dấu phân cách là "; ".
Cách này thực sự tiết kiệm thời gian đáng kể, đặc biệt với các file lớn. Ai hay gặp tình huống tương tự thì thử áp dụng xem sao nhé!