EzTech

TEXTBEFORE / TEXTAFTER

Văn bảnNên biếtExcel 365
TEXTBEFORE(chuỗi, dấu_ngăn, [lần_thứ_mấy], [phân_biệt_hoa_thường], [khớp_tới_cuối], [nếu_không_thấy])TEXTAFTER(chuỗi, dấu_ngăn, [lần_thứ_mấy], [phân_biệt_hoa_thường], [khớp_tới_cuối], [nếu_không_thấy])

Lấy phần chữ nằm TRƯỚC hoặc SAU một dấu ngăn cho trước. Làm gọn đúng việc mà trước đây phải ghép LEFT với FIND, và không cần đếm ký tự nữa.

Các đối số

Đối sốBắt buộc?Ý nghĩa
chuỗiBắt buộcÔ cần tách.
dấu_ngănBắt buộcKý tự hoặc cụm chữ dùng làm mốc: dấu gạch, dấu phẩy, dấu cách, chữ @, hoặc CHAR(10) nếu ô có xuống dòng.
lần_thứ_mấyTuỳ chọnLấy theo lần xuất hiện thứ n của dấu ngăn, mặc định là 1. Số ÂM thì đếm ngược từ cuối chuỗi: -1 là dấu ngăn cuối cùng.
phân_biệt_hoa_thườngTuỳ chọn0 là không phân biệt (mặc định), 1 là có phân biệt.
nếu_không_thấyTuỳ chọnTrả về gì khi không có dấu ngăn trong chuỗi. Bỏ trống thì ra #N/A.

Ví dụ

  • =TEXTBEFORE(A2, "-")

    Lấy loại chứng từ từ mã HD-2026-0459

    Kết quả: HD

  • =TEXTAFTER(A2, "-", -1)

    Lấy phần sau dấu gạch CUỐI CÙNG, tức số thứ tự

    Kết quả: 0459

  • =TEXTBEFORE(B2, "@", 1, 0, 0, B2)

    Tách tên đăng nhập từ email, ô nào không phải email thì giữ nguyên

    Kết quả: ketoan

Lưu ý khi dùng

  • Hai hàm này chỉ có ở Excel 365 và Excel 2024. File gửi sang máy dùng bản cũ sẽ hiện thành _xlfn.TEXTBEFORE và trả về #NAME?.
  • Bản cũ làm cùng việc bằng LEFT ghép FIND, dài hơn nhưng chạy ở mọi nơi — file gửi ra ngoài thì nên chọn cách đó.

Bẫy hay dính

Mặc định hai hàm lấy theo lần xuất hiện ĐẦU TIÊN của dấu ngăn. Chuỗi có nhiều dấu ngăn kiểu "Hà Nội - Cầu Giấy - Kho A" thì TEXTAFTER trả về "Cầu Giấy - Kho A", một chuỗi hoàn toàn hợp lệ nên nhìn lướt không thấy sai, tới lúc gộp nhóm mới lộ ra thừa. Muốn lấy đúng khúc cuối thì ghi lần_thứ_mấy bằng -1.

Hàm liên quan

Chat ZaloGọi điệnMessengerTìm đường