Ta đều đã biết tới kĩ thuật tách chuỗi, tách địa chỉ, họ tên… sử dụng SUBSTITUTE. Ngược lại, ta cũng có kĩ thuật ghép chuỗi bằng các hàm như CONCAT, TEXTJOIN hay các hàm UDF (User-defined function). Trong bài viết này, ta sẽ đi vào cụ thể một ví dụ: hàm TEXTJOIN ghép chuỗi thỏa mãn điều kiện. Đây là hàm chỉ có trong phiên bản Office 365 và 2019, bởi vậy với các phiên bản cũ hơn, các bạn có thể tham khảo các hàm khác trong link cuối bài viết.
Xem nhanh
Ta có ví dụ sau:
Yêu cầu: Liệt kê các thành phố theo từng quốc gia, phân cách bởi dấu phẩy.
Giải:
Hàm TEXTJOIN kết hợp cùng hàm IF sẽ giúp ta làm điều này. Công thức ở đây là:
{=TEXTJOIN(“, “,TRUE,IF($A$2:$A$16=$E2,$B$2:$B$16,””))}
Sau đó kéo công thức cho những ô còn lại. Ta có kết quả:
Ta sẽ cùng diễn giải công thức này như sau:
Hàm TEXTJOIN bao gồm các đối số:
=TEXTJOIN(delimiter, ignore_text, text1, text2…)
delimiter: kí tự phân cách các chuỗi ở dạng TEXT, được ghi trong dấu nháy kép.
ignore_text: giá trị TRUE sẽ bỏ qua những ô trống, FALSE bao gồm những ô trống.
text1, text2: các chuỗi cần ghép bằng TEXTJOIN
Trong đối số thứ 3 text1 ta lồng vào hàm IF với ý nghĩa như sau:
=IF(vùng điều kiện=điều kiện,vùng chứa chuỗi cần ghép,giá trị rỗng)
Từ đó Excel sẽ xét từng ô trong vùng điều kiện có thỏa mãn điều kiện không và trả về giá trị tương ứng. Kết quả từ chức năng Evaluate Formula của ta như sau:
Trong trường hợp này, hàm IF vẫn trả về cả kết quả của 2 trường hợp đúng và sai. Bởi vậy, nếu ta đặt ignore_text bằng FALSE, kết quả ta nhận được sẽ bao gồm cả những giá trị rỗng như sau:
Xem thêm các bài viết tương tự sau:
Cách dùng hàm ghép chuỗi, nối chuỗi theo ô, vùng hoặc theo điều kiện