Kết Hợp Hàm Left Và Right Trong Excel – Cách Sử Dụng Đơn Giản Và Tối Ưu

Mục lục bài viết

Giới thiệu

Excel là một công cụ mạnh mẽ dành cho người làm dữ liệu, kế toán, quản lý kho, và nhiều lĩnh vực khác. Trong quá trình xử lý dữ liệu, việc tách, trích xuất, hoặc sắp xếp chuỗi ký tự thường xuyên là một nhu cầu thiết yếu. Hai hàm “hàng đầu” trong việc làm việc với chuỗi ký tự là LEFT và RIGHT.

  • LEFT(text, num_chars): Trả về một số ký tự nhất định từ phía trái (đầu đầu) của chuỗi.
  • RIGHT(text, num_chars): Trả về một số ký tự nhất định từ phía phải (cuối cùng) của chuỗi.

Mặc dù hai hàm này có vẻ đơn giản, nhưng khi kết hợp chúng với nhau hoặc với các hàm khác, chúng ta có thể thực hiện rất nhiều thao tác phức tạp mà không cần phải viết mã VBA hay dùng công cụ xử lý dữ liệu nâng cao.

Trong bài viết này, chúng ta sẽ:

  1. Giải thích chi tiết cách hoạt động của LEFT và RIGHT.
  2. Trình bày các ví dụ thực tế về cách kết hợp hai hàm này để giải quyết các bài toán phổ biến.
  3. Hướng dẫn cách tối ưu công thức, tránh lỗi thường gặp.
  4. Đưa ra các mẹo và thủ thuật nâng cao, bao gồm cách dùng với hàm TEXT, FIND, MID, IF, và hàm tùy chỉnh.

Với độ dài trên 1500 từ, hy vọng bài viết sẽ cung cấp đủ thông tin cho cả người mới bắt đầu và những người đã có kinh nghiệm sử dụng Excel.

1. Cơ Bản Về Hàm LEFT và RIGHT

1.1 Hàm LEFT

Cú pháp: LEFT(text, num_chars)

  • text: Chuỗi ký tự mà bạn muốn lấy.
  • num_chars: Số ký tự muốn lấy từ phía trái.

Ví dụ:

A (Chuỗi)Công thứcKết quả
AbcDefGhi=LEFT(A1,3)Abc
123456=LEFT(A1,2)12
Hello=LEFT(A1,10)Hello (không lỗi, trả về cả chuỗi)

1.2 Hàm RIGHT

Cú pháp: RIGHT(text, num_chars)

  • text: Chuỗi ký tự mà bạn muốn lấy.
  • num_chars: Số ký tự muốn lấy từ phía phải.

Ví dụ:

A (Chuỗi)Công thứcKết quả
AbcDefGhi=RIGHT(A1,3)Ghi
123456=RIGHT(A1,2)56
Hello=RIGHT(A1,10)Hello

1.3 Khi nào dùng LEFT vs RIGHT?

  • LEFT: Khi bạn cần lấy phần đầu của chuỗi, ví dụ: lấy mã khách hàng từ mã khách hàng dài (KH-001).
  • RIGHT: Khi bạn cần lấy phần cuối, ví dụ: lấy phần mở rộng của một tệp (.xlsx).

2. Kết Hợp LEFT và RIGHT Trong Thực Tiễn

2.1 Tách dữ liệu theo định dạng cố định

Giả sử bạn có cột chứa địa chỉ email và bạn muốn tách phần tên người dùng và tên miền.

A (Email)B (Tên người dùng)C (Tên miền)
john.doe@example.com=LEFT(A1, FIND("@", A1)-1)=RIGHT(A1, LEN(A1)-FIND("@", A1))
  • Giải thích:
  • FIND("@", A1) trả về vị trí của ký tự “@”.
  • LEFT(A1, FIND("@", A1)-1) lấy ký tự từ đầu tới trước “@”.
  • RIGHT(A1, LEN(A1)-FIND("@", A1)) lấy phần sau “@”.

2.2 Trích xuất mã vùng và số hiệu từ chuỗi định dạng VN-1234

A (Mã)B (Vùng)C (Số hiệu)
VN-1234=LEFT(A1, FIND("-", A1)-1)=RIGHT(A1, LEN(A1)-FIND("-", A1))
  • LEFT lấy VN.
  • RIGHT lấy 1234.

2.3 Lấy phần mở rộng tệp (.pdf, .docx, …)

A (Tên tệp)B (Phần mở rộng)
report_final.pdf=RIGHT(A1, LEN(A1)-FIND(".", A1))
  • FIND(".", A1) trả về vị trí dấu chấm.
  • RIGHT(A1, LEN(A1)-FIND(".", A1)) lấy chuỗi sau dấu chấm.

2.4 Kiểm tra ký tự đầu và cuối

Đôi khi bạn cần xác định xem một chuỗi có bắt đầu bằng một ký tự cụ thể hay kết thúc bằng một ký tự cụ thể.

A (Chuỗi)B (Bắt đầu là “A”? )C (Kết thúc là “Z”? )
Apple=LEFT(A1,1)="A"=RIGHT(A1,1)="Z"
AmazingZ=LEFT(A1,1)="A"=RIGHT(A1,1)="Z"

Kết quả: TRUE/FALSE.

2.5 Lọc dữ liệu theo tiền tố hoặc hậu tố

Giả sử bạn có danh sách mã sản phẩm và muốn lọc ra những sản phẩm có tiền tố “PROD-”.

A (Mã sản phẩm)B (Có tiền tố PROD?)
PROD-001=LEFT(A1,5)="PROD-"
ITEM-002=LEFT(A1,5)="PROD-"
  • Bạn có thể dùng FILTER hoặc IF để tạo danh sách mới.

2.6 Kết hợp với MID để trích xuất phần giữa

Hàm MID(text, start_num, num_chars) lấy một đoạn giữa chuỗi. Khi kết hợp với LEFT và RIGHT, bạn có thể lấy phần giữa mà không cần biết độ dài.

Ví dụ: lấy số hiệu giữa “-” và “_” trong chuỗi ABC-1234_XYZ.

A (Chuỗi)B (Số hiệu)
ABC-1234_XYZ
=MID(A1, FIND("-", A1)+1, FIND("_", A1)-FIND("-", A1)-1)
  • FIND("-", A1)+1 là vị trí bắt đầu số.
  • FIND("_", A1)-FIND("-", A1)-1 là độ dài số.

3. Ứng Dụng Đặc Biệt: Kết Hợp LEFT và RIGHT với Các Hàm Khác

3.1 Sử dụng với hàm IF để xử lý lỗi

Khi dùng LEFT hoặc RIGHT với một chuỗi rỗng hoặc chuỗi ngắn hơn số ký tự yêu cầu, Excel sẽ trả về lỗi #VALUE!.

Giải pháp: dùng IFERROR hoặc IF(LEN(text) >= num_chars, ...).

Ví dụ: lấy 5 ký tự cuối của chuỗi nhưng tránh lỗi.

=IFERROR(RIGHT(A1,5), "")

3.2 Tách ngày/giờ khi có định dạng YYYY-MM-DD HH:MM:SS

Kết Hợp Hàm Left Và Right Trong Excel
Kết Hợp Hàm Left Và Right Trong Excel
A (Timestamp)B (Ngày)C (Giờ)
2026-07-13 08:30:00=LEFT(A1,10)=RIGHT(A1,8)
  • LEFT lấy 2026-07-13.
  • RIGHT lấy 08:30:00.

3.3 Tích hợp với hàm TEXT để định dạng lại

Giả sử bạn muốn chuyển số điện thoại 10 chữ số thành +84-xxx-xxx-xxxx.

A (Số điện thoại)B (Định dạng)
0912345678="+84-" & LEFT(A1,3) & "-" & MID(A1,4,3) & "-" & RIGHT(A1,4)
  • LEFT(A1,3) lấy 091.
  • MID(A1,4,3) lấy 234.
  • RIGHT(A1,4) lấy 5678.

3.4 Phân loại dữ liệu theo ký tự cuối

Bạn có thể dùng RIGHT để xác định loại dữ liệu. Ví dụ, phân loại số điện thoại theo nhà mạng:

A (Số điện thoại)B (Nhà mạng)
0912345678=IF(RIGHT(A1,1)="8","Viettel", IF(RIGHT(A1,1)="9","Mobifone","Vinaphone"))
  • RIGHT(A1,1) lấy chữ số cuối.
  • IF xác định nhà mạng.

3.5 Tạo mã giao dịch duy nhất

A (Ngày)B (Số thứ tự)C (Mã giao dịch)
2024071312=LEFT(A1,8) & "-" & TEXT(B1,"000")
  • LEFT(A1,8) lấy 20240713.
  • TEXT(B1,"000") chuyển số thứ tự thành 3 chữ số.

4. Tối Ưu Công Thức và Tránh Các Lỗi Thường Gặp

4.1 Sử dụng tham chiếu tên để tránh lỗi khi thay đổi cột

Thay vì dùng A1, B1, bạn có thể đặt tên cho cột (ví dụ: Email, PhoneNumber). Khi di chuyển cột, công thức vẫn hoạt động.

4.2 Kiểm tra độ dài chuỗi trước khi trích xuất

Khi bạn không chắc chắn độ dài chuỗi, dùng LEN:

=IF(LEN(A1)>=5, LEFT(A1,5), A1)

4.3 Xử lý chuỗi có ký tự đặc biệt

Nếu chuỗi có ký tự đặc biệt (khoảng trắng, dấu gạch ngang), hãy dùng TRIM, SUBSTITUTE để chuẩn hóa trước khi dùng LEFT/RIGHT.

Ví dụ: loại bỏ dấu gạch ngang:

=SUBSTITUTE(A1,"-","")

4.4 Tránh lỗi khi FIND không tìm thấy ký tự

FIND trả về lỗi nếu ký tự không tồn tại. Bạn có thể dùng IFERROR:

=IFERROR(LEFT(A1, FIND("-", A1)-1), A1)

4.5 Sử dụng hàm TEXTJOIN cho chuỗi dài

Nếu bạn cần kết hợp nhiều đoạn chuỗi (LEFT + MID + RIGHT), TEXTJOIN giúp gộp lại một cách gọn gàng.

=TEXTJOIN("", TRUE, LEFT(A1,3), "_", MID(A1,4,5), "_", RIGHT(A1,2))

5. Các Mẹo Thú Vị và Thủ Thuật Nâng Cao

5.1 Tạo công thức “Smart Truncate” (cắt ngắn thông minh)

Bạn muốn lấy 10 ký tự đầu nhưng không cắt giữa từ.

=LEFT(A1, FIND(" ", A1 & " ", 10)-1)

  • A1 & " " thêm một dấu cách tạm thời.
  • FIND(" ", A1 & " ", 10) tìm dấu cách đầu tiên sau ký tự 10.

5.2 Kết hợp với hàm XLOOKUP để tìm dữ liệu theo phần đầu hoặc cuối

Giả sử bạn có bảng mã sản phẩm và muốn tìm tên sản phẩm dựa trên phần đầu của mã.

=XLOOKUP(LEFT(A1,5), Mã_Sản_phẩm, Tên_Sản_phẩm)

5.3 Tự động tạo cột phụ cho dấu phân cách

Nếu chuỗi có nhiều dấu phân cách (ví dụ: A|B|C|D), bạn có thể dùng LEFT và RIGHT lặp lại cho từng ký tự:

=MID(A1, FIND("|", A1, 0)+1, FIND("|", A1, FIND("|", A1, 0)+1)-FIND("|", A1, 0)-1)

5.4 Kết hợp với hàm FILTER để lọc dữ liệu theo ký tự đầu

=FILTER(A2:A100, LEFT(A2:A100, 3)="ABC")

5.5 Sử dụng trong Power Query

Trong Power Query, bạn có thể dùng hàm Text.Start và Text.End tương đương với LEFT và RIGHT. Khi nhập dữ liệu từ nguồn, dễ dàng thực hiện các bước trích xuất mà không cần tạo công thức phức tạp trong bảng tính.

6. Tóm Tắt và Kết Luận

  • LEFT và RIGHT là hai công cụ cơ bản nhưng cực kỳ hữu ích trong việc xử lý chuỗi trong Excel.
  • Khi kết hợp với FIND, MID, LEN, TEXT, IF, XLOOKUP, FILTER, bạn có thể thực hiện hầu hết các thao tác trích xuất, phân loại, và chuyển đổi dữ liệu mà không cần viết mã.
  • Việc kiểm tra độ dài chuỗi và xử lý lỗi (IFERROR, IF(LEN>=)) là yếu tố quan trọng để công thức hoạt động ổn định.
  • Các mẹo như “Smart Truncate”, “Kết hợp với Power Query”, và “Sử dụng TEXTJOIN” giúp nâng cao hiệu quả và giảm thiểu lỗi.

Những công thức và ví dụ trên cung cấp một bộ công cụ mạnh mẽ để bạn có thể thao tác dữ liệu một cách linh hoạt, nhanh chóng và chính xác. Hãy thử áp dụng chúng trong công việc hàng ngày và khám phá thêm nhiều cách sáng tạo khác để tối ưu công việc Excel của bạn!

⚠️
LƯU Ý QUAN TRỌNG: Miễn trừ trách nhiệm: Mặc dù chúng tôi luôn nỗ lực để đảm bảo tính chính xác và cập nhật của thông tin, nhưng các quy định về giáo dục và tuyển sinh có thể thay đổi theo thời gian. BigSchool không chịu trách nhiệm về bất kỳ sai sót nào hoặc kết quả phát sinh từ việc sử dụng thông tin trên trang này. Độc giả nên liên hệ trực tiếp với nhà trường hoặc cơ quan chức năng để có thông tin mới nhất. Ngoài ra, BigSchool tuyệt đối không bán sản phẩm, khóa học hay cung cấp dịch vụ được nhắc đến trong bài.

Viết một bình luận