Bên cạnh chức năng ghép chuỗi văn bản, hàm TEXTJOIN còn có thể đóng vai trò hàm đảo ngược chuỗi trong Excel. Nếu bạn đang cần đảo ngược một đoạn văn bản nào đó mà chưa biết cách làm, hãy cùng Gitiho tìm hiểu cách giải quyết nhanh chóng với hàm TEXTJOIN nhé.
Thành thạo Textjoin và các hàm liên quan với khóa học Excel cơ bản đến nâng cao sau:
Giả sử chúng ta có chuỗi văn bản "ABCDE" trong ô A1 cần được chuyển đổi thành "EDCBA". Chúng ta sẽ sử dụng hàm TEXTJOIN lồng hàm MID như một hàm đảo ngược chuỗi trong Excel như thế nào?
Hàm MID sử dụng mảng có thể lấy kí tự từ một ô và trả về mảng theo thứ tự mong muốn. Ở đây chúng ta cần đảo ngược chuỗi nên sử dụng hàm MID trả về kết quả theo thứ tự từ cuối lên đầu.
Sau khi hàm MID đã trả về kết quả các kí tự đảo ngược nhưng ở các ô khác nhau, hàm TEXTJOIN sẽ ghép chuỗi văn bản vào ô A2. Vì vậy, chúng ta viết công thức hàm TEXTJOIN kết hợp hàm MID tại ô A2 như sau:
=TEXTJOIN(“”,TRUE,MID(A1,{4,3,2,1},1))
Vậy là Excel sẽ trả về kết quả "EDCBA" như ta cần.
Chúng ta đã thành công sử dụng hàm đảo ngược chuỗi trong Excel bằng cách kết hợp hàm TEXTJOIN cùng hàm MID. Tuy nhiên, khi ta cần thêm số lượng kí tự trong ô, chúng ta sẽ cần nhập thêm số trong công thức để nhận kết quả đúng. Làm thế nào để Excel tự động chỉnh công thức cho phù hợp với sự thay đổi về số lượng kí tự?
Trong trường hợp này, chúng ta phải kết hợp thêm hàm LEN để đếm số lượng kí tự bằng cách dùng hàm LEN cho ô A1 và trả thứ tự từ LEN(A1) về 1. Để thực hiện được điều này, chúng ta có 2 phương pháp với hàm TEXTJOIN: Sử dụng hàm SEQUENCE (chỉ có trong Microsoft 365) hoặc kết hợp cùng hàm ROW và hàm INDIRECT.
Hàm SEQUENCE cho phép ta tạo tạo một mảng văn bản có thể thay đổi kích thước theo số lượng kí tự được nhập vào ô. Kết hợp với hàm LEN và bước đếm -1, ta có công thức sau:
=SEQUENCE(LEN(A1),,LEN(A1),-1)
hoặc
=SEQUENCE(,LEN(A1),LEN(A1),-1)
Khi ta đặt công thức hàm SEQUENCE vào hàm MID như ở phần trên, ta có công thức cuối cùng của hàm TEXTJOIN như sau:
=TEXTJOIN(“”,TRUE,MID(A1,SEQUENCE(,LEN(A1),LEN(A1),-1),1))
Để sử dụng hàm ROW và hàm INDERECT kết hợp hàm LEN như đã đề cập, chúng ta có công thức sau:
=ROW(INDIRECT(“1:”&LEN(A1)))
Do kết quả trả về sẽ hiển thị theo thứ tự tăng dần, chúng ta cần sử dụng một phép trừ trong mảng để chuyển kết quả về thứ tự giảm dần.
=LEN(A1) – ROW(INDIRECT(“1:”&LEN(A1))) +1
Kết hợp hàm trên vào trong hàm TEXTJOIN lồng hàm MID, ta có công thức hàm đảo ngược chuỗi trong Excel tại ô A3 như sau:
=TEXTJOIN(“”,TRUE,MID(A1,LEN(A1) – ROW(INDIRECT(“1:”&LEN(A1))) +1,1))
Vậy là chúng ta vừa tìm hiểu các sử dụng hàm TEXTJOIN như một hàm đảo ngược chuỗi trong Excel. Qua bài viết này, hi vọng các bạn có thể áp dụng các hàm Excel để thay đổi thứ tự mảng văn bản thay vì nhập tay thủ công.
Nếu các bạn muốn học thêm nhiều thủ thuật hay chẳng hạn như nối các chuỗi ký tự với hàm Textjoin, hãy đọc các bài viết trên blog Gitiho và nhanh tay đi học Tuyệt đỉnh Excel với chúng mình nhé.
Chúc các bạn làm việc thành công!