Chuyển tới nội dung chính

Bài 8: Nhóm Hàm Xử Lý Chuỗi (Text) & Thời Gian (Date)

Giai đoạn 2 – Trung cấp · Mục tiêu: Tách, cắt, làm sạch chuỗi văn bản và thao tác chuyên nghiệp với dữ liệu ngày tháng.


1. Nhóm hàm xử lý Chuỗi (Text)

1.1. Tách chuỗi ký tự

HàmCú phápMô tả
LEFT=LEFT(text, n)Lấy n ký tự từ bên trái
RIGHT=RIGHT(text, n)Lấy n ký tự từ bên phải
MID=MID(text, start, n)Lấy n ký tự bắt đầu từ vị trí start

Ví dụ: Ô A1 chứa "SP-001-LAPTOP"

=LEFT(A1, 2) → "SP"
=RIGHT(A1, 6) → "LAPTOP"
=MID(A1, 4, 3) → "001"

1.2. Kiểm tra độ dài & Làm sạch

HàmCú phápMô tả
LEN=LEN(text)Đếm số ký tự (bao gồm khoảng trắng)
TRIM=TRIM(text)Xóa khoảng trắng thừa (đầu, cuối, giữa chỉ giữ 1)
CLEAN=CLEAN(text)Xóa ký tự không in được

Ví dụ:

=LEN("Xin chào") → 8
=TRIM(" Xin chào ") → "Xin chào"

:::tip Ứng dụng thực tế Khi copy dữ liệu từ web hoặc hệ thống khác, luôn dùng =TRIM(CLEAN(A1)) để làm sạch trước khi xử lý! :::

1.3. Chuyển đổi định dạng chữ

HàmChức năngVí dụ
UPPERViết HOA toàn bộ=UPPER("xin chào")"XIN CHÀO"
LOWERViết thường toàn bộ=LOWER("XIN CHÀO")"xin chào"
PROPERViết Hoa Chữ Cái Đầu=PROPER("xin chào")"Xin Chào"

1.4. Các hàm Text hữu ích khác

HàmCú phápMô tả
CONCATENATE / &=A1&" "&B1Nối chuỗi
SUBSTITUTE=SUBSTITUTE(text, old, new)Thay thế chuỗi con
FIND=FIND(find_text, text)Tìm vị trí (phân biệt hoa/thường)
SEARCH=SEARCH(find_text, text)Tìm vị trí (không phân biệt hoa/thường)
TEXT=TEXT(value, format)Chuyển giá trị thành text theo định dạng

Ví dụ nâng cao – Tách Họ và Tên:

Họ: =LEFT(A1, FIND(" ", A1)-1)
Tên: =RIGHT(A1, LEN(A1)-FIND(" ", A1))

2. Nhóm hàm xử lý Thời Gian (Date)

2.1. Hàm trích xuất thành phần ngày

HàmCú phápKết quảVí dụ (01/06/2024)
DAY=DAY(date)Ngày1
MONTH=MONTH(date)Tháng6
YEAR=YEAR(date)Năm2024
WEEKDAY=WEEKDAY(date)Thứ trong tuần (1-7)7 (Thứ 7)

2.2. Hàm ngày hiện tại

HàmKết quả
=TODAY()Ngày hiện tại (tự động cập nhật)
=NOW()Ngày + giờ hiện tại

2.3. Hàm DATEDIF – Tính khoảng cách thời gian

:::info Hàm ẩn DATEDIF là hàm không xuất hiện trong danh sách gợi ý của Excel nhưng hoạt động hoàn toàn bình thường. :::

=DATEDIF(ngày_bắt_đầu, ngày_kết_thúc, đơn_vị)
Đơn vịÝ nghĩaVí dụ (01/01/2020 → 15/06/2024)
"Y"Số năm tròn4
"M"Số tháng tròn53
"D"Số ngày1627
"YM"Số tháng lẻ (sau khi trừ năm)5
"MD"Số ngày lẻ (sau khi trừ tháng)14

Ứng dụng thực tế

Tính tuổi: =DATEDIF(B2, TODAY(), "Y") & " tuổi"
Thâm niên: =DATEDIF(C2, TODAY(), "Y") & " năm " & DATEDIF(C2, TODAY(), "YM") & " tháng"
Hạn hợp đồng: =IF(DATEDIF(D2, TODAY(), "M") > 12, "Hết hạn", "Còn hạn")

Bài tập thực hành

Cho bảng nhân viên: Họ tên đầy đủ, Ngày sinh, Ngày vào công ty, Email.

  1. Tách HọTên thành 2 cột riêng.
  2. Tính tuổi hiện tại (dùng DATEDIF).
  3. Tính thâm niên công tác (năm + tháng).
  4. Từ Email, trích xuất tên miền (phần sau @).
  5. Chuẩn hóa cột Họ tên bằng PROPERTRIM.

Bài trước: Bài 7 – Hàm Tìm Kiếm · Bài tiếp: Bài 9 – Công Cụ Quản Lý Dữ Liệu