Hế lô các bạn..
Khi sử dụng Excel trong thực tế, các bạn hay dùng để tính toán những con số trong bảng dữ liệu. Tuy nhiên, rất nhiều trường hợp các bạn phải xử lý các dữ liệu dạng chữ (hay còn gọi là dạng Text) để xử lý các con số liên quan.
Ở phần này, tớ chia sẻ một số cách xử lý các dữ liệu dạng Text, để có thể lấy ra 1 đoạn ký tự trong một chuỗi ban đầu..
Tớ có ví dụ sau:
- Cột B là “Mã sản phẩm”
- Từ danh sách Mã sản phẩm, tớ cần lấy ra “Loại sản phẩm”, Hãng sản xuất” và “Mã số” tương ứng:
1. Lấy đoạn chữ phía trước
Hàm: | = LEFT ( text , [num_chars] ) |
text: | Chuỗi cần lấy |
num_chars: | Số lượng ký tự cần lấy tính từ bên trái. Có thể không nhập giá trị ở đây. Nếu không nhập, mặc định sẽ là 1. |
Ý nghĩa: | Lấy [num_chars] ký tự đầu tiên (tính từ bên trái qua) trong chuỗi [text] |
Ví dụ: Tớ muốn lấy 2 ký tự đầu tiên trong “Mã sản phẩm” để hiện ở cột “Loại sản phẩm”
Công thức tại ô C3: =LEFT(B3,2)
2. Lấy đoạn chữ ở giữa
Hàm: | = MID ( text , start_num , num_chars ) |
text: | Chuỗi cần lấy |
start_num: | Vị trí bắt đầu lấy |
num_chars: | Số lượng ký tự cần lấy. |
Ý nghĩa: | Lấy [num_chars] ký tự bắt đầu từ vị trí [start_num] trong chuỗi [text] |
Ví dụ: Tớ muốn lấy 2 ký tự ở giữa từ vị trí số 4 trong “Mã sản phẩm” để hiện ở cột “Hãng sản xuất”
Công thức tại ô C3: =MID(B3,4,2)
3. Lấy đoạn chữ ở phía cuối
Hàm: | = RIGHT ( text , [num_chars] ) |
text: | Chuỗi cần lấy |
num_chars: | Số lượng ký tự cần lấy ở phía cuối (tính từ bên phải) |
Ý nghĩa: | Lấy [num_chars] ký tự bắt đầu từ phía cuối (bên phải) trong chuỗi [text] |
Ví dụ: Tớ muốn lấy 3 ký tự cuối cùng trong “Mã sản phẩm” để hiện ở cột “Mã số”
Công thức tại ô C3: =MID(B3,4,2)
4. Các trường hợp không theo quy tắc
Như ví dụ ở trên, “Mã sản phẩm” luôn tuân theo quy tắc:
- 2 ký tự đầu tiên là “Loại sản phẩm” và có dấu gạch ngang tiếp theo
- 2 ký tự tiếp theo là “Hãng sản xuất” và có dấu gạch ngang tiếp theo
- 3 ký tự cuối cùng là “Mã số”
Tuy nhiên, sẽ có nhiều trường hợp số lượng ký tự “Loại sản phẩm” hoặc “Hãng sản xuất” hoặc “Mã số” là không bằng nhau.
Ví dụ:
Ta sẽ sử dụng thêm hàm FIND VÀ hàm LEN để hỗ trợ:
Hàm: | = FIND ( find_text , within_text , [start_num] ) |
find_text: | Chuỗi cần tìm vị trí bắt đầu. |
within_text: | Chuỗi gốc để tìm vị trí |
start_num: | Vị trí bắt đầu tìm. Có thể không nhập giá trị. Mặc định là 1. |
Chú ý: | Nếu chuỗi nhập vào thì phải nằm trong dấu ngoặc kép. |
Ý nghĩa: | Tìm vị trí bắt đầu của chuỗi [find_text] trong chuỗi [within_text] tính từ vị trí [start_num] |
Hàm: | = LEN ( text ) |
text: | chuỗi cần tính giá trị |
Ý nghĩa: | Đếm số lượng ký tự (độ dài) của chuỗi [text] |
Áp dụng vào ví dụ ở trên:
Độ dài của “Mã sản phẩm” cần lấy: phụ thuộc vào vị trí của “dấu gạch ngang đầu tiên”:
– Nếu vị trí dấu gạch ngang là 3, thì số lượng ký tự cần lấy là 3-1=2
– Nếu vị trí dấu gạch ngang là 4, thì số lượng ký tự cần lấy là 4-1=3
Công thức của ô C3:
=FIND(“-“,B3)
Vậy công thức “Mã sản phẩm” (ở ô D3) sẽ là: =LEFT(B3,C3-1)
Các bạn có thể gộp thành công thức: =LEFT(B3,FIND(“-“,B3)-1)
Tiếp tục đối với “Hãng sản xuất”:
Số lượng ký tự cần lấy = vị trí của dấu gạch ngang thứ 2 – vị trí của dấu gạch ngang đầu tiên – 1
Công thức tại ô D3 (Vị trí dấu gạch ngang thứ 2): =FIND(“-“,B3,C3+1)
Công thức tại ô E3 (Mã sản phẩm): =MID(B3,C3+1,D3-C3-1)
Các bạn có thể gộp thành công thức:
=MID(B3,FIND(“-“,B3)+1,FIND(“-“,B3,FIND(“-“,B3)+1)–FIND(“-“,B3)-1)
Và tiếp tục phần “Mã số”
Số lượng ký tự cần lấy = Độ dài của chuỗi – vị trí của dấu gạch ngang thứ 2
Công thức tại ô E3 (Độ dài chuỗi): =LEN(B3)
Công thức tại ô F3 (Mã số): =RIGHT(B3,E3-D3)
Các bạn có thể gộp thành công thức:
=RIGHT(B3,LEN(B3)-FIND(“-“,B3,FIND(“-“,B3)+1))
Như vậy, các bạn có thể nắm được cách sử dụng hàm LEFT, MID, RIGHT để lấy 1 đoạn text nhỏ trong 1 đoạn text dài, có sẵn.
Ngoài ra, có thể sử dụng kèm thêm hàm FIND, LEN để hỗ trợ thêm.
Các bạn có thể tham khảo thêm file Excel mẫu dưới đây:
Hẹn gặp lại các bạn trong các phần tiếp theo..