
Hàm TEXTSPLIT, TEXTBEFORE, TEXTAFTER Và Cách Thay Thế
Ba hàm này tách một chuỗi thành nhiều phần bằng công thức: TEXTSPLIT tách theo dấu phân cách, TEXTBEFORE lấy phần trước một ký tự, TEXTAFTER lấy phần sau.
Trước khi đi vào cách dùng, cần nói rõ về phiên bản, vì đây là điểm gây hiểu nhầm nhiều nhất với nhóm hàm này.

Phiên bản nào có ba hàm này?
Trang tài liệu hàm văn bản của Microsoft gắn nhãn Office 365 cho cả TEXTSPLIT, TEXTBEFORE và TEXTAFTER. Nhãn này nghĩa là hàm dành cho bản thuê bao Microsoft 365, không phải bản mua một lần.
Nhiều trang hướng dẫn trên mạng nói rằng Excel 2021 có TEXTSPLIT, nhưng các nguồn sát với Microsoft hơn thì nói ngược lại. Thực tế là khá nhiều người dùng Office 2021 bản vĩnh viễn đã lên diễn đàn hỏi vì sao máy mình không có hàm này.
Cách kiểm tra chắc chắn nhất là thử trên chính máy bạn: gõ =TEXTSPLIT("a,b", ",") vào một ô trống. Ra kết quả thì bản của bạn có, báo #NAME? thì không có.
Nếu bạn đang cân nhắc mua Office chỉ vì cần nhóm hàm này, hãy liên hệ bộ phận kỹ thuật để kiểm tra trước. Đừng mua dựa trên thông tin từ các bài hướng dẫn, kể cả bài này.
Cách dùng TEXTSPLIT
=TEXTSPLIT(chuỗi, dấu_tách_cột, [dấu_tách_dòng], [bỏ_ô_trống], [giá_trị_đệm])
Tách một chuỗi ngăn cách bằng dấu phẩy thành các cột:
=TEXTSPLIT(A2, ",")
Tách bằng dấu phẩy kèm khoảng trắng để kết quả không dư dấu cách:
=TEXTSPLIT(A2, ", ")
Tách theo cả cột lẫn dòng cùng lúc, dùng khi chuỗi có hai cấp ngăn cách:
=TEXTSPLIT(A2, "=", ";")

TEXTBEFORE và TEXTAFTER
=TEXTBEFORE(chuỗi, ký_tự_mốc, [lần_xuất_hiện])
Lấy phần tên miền của một email:
=TEXTAFTER(A2, "@")
Lấy phần trước dấu gạch ngang đầu tiên trong mã sản phẩm:
=TEXTBEFORE(A2, "-")
Tham số thứ ba chỉ định lấy theo lần xuất hiện thứ mấy. Số âm nghĩa là đếm ngược từ cuối, rất tiện khi bạn cần lấy phần cuối cùng của một đường dẫn:
=TEXTAFTER(A2, "\", -1)
Cách làm thay thế trên bản Office vĩnh viễn
Nếu máy bạn không có nhóm hàm này, có ba cách khác đều dùng được.
Cách 1: Text to Columns. Chọn cột dữ liệu, vào Data → Text to Columns, chọn Delimited, đánh dấu ký tự phân cách rồi bấm Finish. Nhanh và dễ nhất, nhược điểm là kết quả tĩnh, dữ liệu gốc đổi thì phải làm lại.
Cách 2: Flash Fill. Gõ tay kết quả mong muốn ở một hai dòng đầu, rồi bấm Ctrl+E. Excel tự suy ra quy luật và điền phần còn lại. Hoạt động tốt với dữ liệu có cấu trúc đều.
Cách 3: kết hợp LEFT, RIGHT, MID với FIND. Cách này cho kết quả tự cập nhật như công thức thật.
Lấy phần trước dấu gạch ngang: =LEFT(A2, FIND("-", A2)-1)
Lấy phần sau dấu @: =MID(A2, FIND("@", A2)+1, LEN(A2))
Công thức dài hơn nhưng chạy được trên mọi phiên bản, kể cả key Office 2016.
Thao tác ngược: ghép chuỗi lại
Nếu bạn cần nối các phần đã tách thành một chuỗi, dùng TEXTJOIN. Hàm này thì có từ bản 2019 và hoạt động ổn định trên bản vĩnh viễn, xem hàm TEXTJOIN và CONCAT. Bản có TEXTJOIN thấp nhất là key Office 2019.
Câu hỏi thường gặp
Máy tôi có Office 2021 mà không thấy TEXTSPLIT?
Đây là tình huống nhiều người gặp. Bản mua một lần thường không có nhóm hàm này. Dùng một trong ba cách thay thế ở trên.
Cập nhật Office có thêm được hàm này không?
Bản mua một lần chỉ nhận bản vá lỗi, không nhận tính năng mới. Cập nhật sẽ không thêm hàm.
Text to Columns ghi đè lên cột bên cạnh?
Có. Nhớ chèn sẵn các cột trống bên phải trước khi chạy, hoặc chọn ô đích khác ở bước cuối.
Tách xong bị mất số 0 ở đầu mã?
Ở bước cuối của Text to Columns, chọn định dạng cột là Text thay vì General.



