Ghép chuỗi thỏa mãn điều kiện trong Excel

01/11/2023
1,547

Excel cung cấp nhiều hàm có thể giúp thao tác dữ liệu theo nhiều cách khác nhau, có thể bạn đã biết đến kỹ thuật tách chuỗi sử dụng Substitute, ghép chuỗi bằng hàm Concat, Textjoin. Trong bài viết này, ta sẽ đi vào cụ thể 1 ví dụ của hàm TEXTJOIN để ghép chuỗi thỏa mãn điều kiện.

Trước tiên, ta cùng tìm hiểu về cú pháp và tham số của TEXTJOIN:

=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

TEXTJOIN hoạt động tốt hơn với các hàm khác trong Excel để thao tác dữ liệu nâng cao. Dưới đây là ví dụ khi sử dụng hàm IF trong hàm TEXTJOIN để bao gồm hoặc loại trừ các chuỗi chữ cái một cách có điều kiện dựa trên các tiêu chí nhất định.

Giả sử bạn có một danh sách tên các thành phố, huyện của tỉnh Tuyên Quang ở cột B, tên các phường, thị trấn, xã ở cột C. Bạn muốn tạo một ô duy nhất chứa tên các của các thành phố, huyện này, được phân tách bởi dấu phẩy. Trong ô G3, bạn có thể sử dụng công thức sau:

=TEXTJOIN(", ",TRUE,IF(($B$2:$B$139=$F3)*(LEFT($C$2:$C$139,2)="Xã"),$C$2:$C$139,""))

Sau khi nhập công thức vào ô G3, bạn cần xác nhận bằng ổ hợp phím CTRL + SHIFT +ENTER (vì đây là công thức mảng), nhưng nếu bạn đang sử dụng Office 365 thì sẽ không cần dùng tổ hợp phím này. Kết quả trả về là danh sách các xã của thành phố, huyện đã tham chiếu. Công thức sử dụng hàm IF để kiểm tra nếu tên thành phố, huyện ở cột B trùng với tên thành phố, huyện cần tham chiếu ở ô F3 và chữ đầu tiên của tên phường, thị trấn, xã ở cột C là "Xã" thì sẽ trả lại giá trị tên xã của ô đó, nếu không thỏa mãn 2 điều kiện trên thì sẽ trả về chuỗi trống ("") . Sau đó, hàm TEXTJOIN sẽ hợp nhất các tên đã chọn và phân tách từng tên bằng dấu phẩy.

Tuy nhiên, ô giá trị trả về đang bị lặp chữ "Xã" ở đầu tên xã, chúng ta sẽ lồng thêm hàm SUBTITUDE để loại bỏ chữ Xã ở đầu các giá trị trả về từ hàm IF. Công thức nhập vào ô G3 sẽ trở thành như sau: 

=TEXTJOIN(", ",TRUE,IF(($B$2:$B$139=$F3)*(LEFT($C$2:$C$139,2)="Xã"),SUBSTITUTE($C$2:$C$139,"Xã ",""),""))

Hàm TEXTJOIN trong Excel là một công cụ mạnh mẽ cho phép nối nhiều chuỗi văn bản với một dấu phân cách được chỉ định. Bằng cách hiểu cú pháp và đối số của nó, bạn có thể thao tác và kết hợp dữ liệu một cách linh hoạt và hiệu quả. Cho dù bạn cần hợp nhất tên, địa chỉ hay bất kỳ dữ liệu chữ nào khác, thì hàm TEXTJOIN là một giải pháp tiện lợi.

Trên đây là giới thiệu về hàm TEXTJOIN và ví dụ kết hợp với các hàm khác rất hiệu quả. Chúc các bạn thành công!


Quan tâm Zalo KetcauSoft để theo dõi các bài viết và tài liệu mới