Trong bài viết này, Học Excel Online sẽ giải thích các đặc trưng của hàm Right trong Excel và chỉ ra những cách tối ưu để sử dụng công thức hàm Right trong Excel
Xem nhanh
Hàm RIGHT trong Excel giúp phân xuất số kí tự xác định trong chuỗi văn bản
= Right(Text,[num_chars])
Cụ thể:
+ Nếu bỏ sót num-chars, 1 kí tự cuối cùng của chuỗi sẽ được trả lại (mặc định)
+ Nếu num-chars nhiều hơn tổng kí tự của chuỗi, tất cả kí tự sẽ được trả lại
+ Nếu num-chars là số âm, công thức hàm RIGHT sẽ trả về #VALUE! Error (giá trị lỗi).
Ví dụ, thể lấy ra 3 kí tự cuối của chuỗi văn bản ô A2, dùng công thức:
=RIGHT(A2, 3)
Kết quả trả về như sau:
Lưu ý quan trọng: hàm RIGHT trong EXCEL luôn trả về một chuỗi văn bản, ngay cả khi giá trị gốc là một chữ số. Để công thức hàm RIGHT cho ra giá trị là số nên kết hợp công thức với hàm VALUE.
Trong thực tế, hàm RIGHT trong Excel hiếm khi được sử dụng độc lập, chúng sẽ được sử dụng với một hàm khác để tạo những công thức phức tạp hơn trong Excel.
Trong trường hợp bạn muốn phân xuất một chuỗi kí tự con theo sau một kí tự nhất định, sử dụng cả hàm SEARCH hay FIND để xác định vị trí của kí tự đó, trừ vị trí kí tự được chọn trong tổng chuỗi kí tự được trả về ta dùng hàm LEN, kéo số kí tự muốn chọn từ phía bên phải chuỗi văn bản nguồn.
RIGHT(chuỗi văn bản, LEN(chuỗi văn bản) – SEARCH(kí tự, chuỗi văn bản))
Ô A2 chứa kí tự đầu và cuối được phân tách nhau bởi khoảng trống, kéo kí tự cuối sang một cột khác. Sử dụng những công thức trên, sau đó ghi A2 vào khoảng trống của chuỗi, và điền kí tự vào khoảng trống “”.
=RIGHT(A2,LEN(A2)-SEARCH(” “,A2))
Kết quả trả về:
:
Trong trường hợp tương tự, có thể phân xuất được chuỗi kí tự con theo sau bất cứ kí tự nào khác như: (,) (;) (-)… Ví dụ, để phân xuất một chuỗi kí tự con theo sau dấu (-), dùng công thức:
=RIGHT(A2,LEN(A2)-SEARCH(“-“,A2)
Khi xử lí những chuỗi phức tạp chứa nhiều dấu phân cách, bạn thường phải khôi phục lại chuỗi văn bản đến bên phải của dấu phân cách cuối cùng. Để đơn giản hơn, theo dõi bảng chứa dữ liệu nguồn và kết quả trả về sau:
Từ bảng trên có thể thấy cột A chứa một chuỗi lỗi (ERROR). Nhiệm vụ của bạn là kéo phần mô tả lỗi theo sau dấu (:) của từng chuỗi. Phức tạp hơn nữa đó là chuỗi văn bản gốc có thể chứa số lượng dấu phân cách khác nhau như ô A3 chứa 3 dấu (:) trong khi ô A5 chỉ có 1.
Để giải quyết, cần xác định vị trí của dấu phân cách cuối cùng trong chuỗi nguồn (trong ví dụ là dấu (:) cuối cùng). Để thực hiện cần có những hàm chức năng khác:
Để đảm bảo công thức đúng, có thể chia công thức ra các ô riêng, sẽ có 2 kết quả trả về, ô A2 chứa số lượng dấu (:).
Nếu đã quen sử dụng hàm SUBSTITUTE trong Excel, có thể bạn nhớ lựa chọn thứ 4 (instance_num) chỉ cho phép thay thế một vị trí xác định của kí tự nhát định. Khi tính xong số lượng dấu phân cách của chuỗi, bổ sung vào lựa chọn thứ 4 bằng hàm SUBSTITUTE sau:
=SUBSTITUTE(A2,”:”,”#”,LEN(A2)LEN(SUBSTITUTE(A2,”:”,””)))
Nếu đặt công thức này trong một ô riêng biệt, kết quả sẽ quay lại chuỗi: ERROR:432#Connection timed out
Trong ví dụ này, công thức trả về 10, là vị trs của dấu (#) trong chuỗi thay thế.
Kết quả trả về:
Đối với bộ dữ liệu lớn, những ô khác nhau có thể chứa nhiều dấu phân cách khác nhau, có thể dùng hàm IFERROR để khoanh vùng công thức:
=IFERROR(RIGHT(A2,LEN(A2)SEARCH(“$”,SUBSTITUTE(A2,”:”,”$”,LEN(A2)LEN(SUBSTITUTE(A2,”:”,””))))), A2)
Trong trường hợp chuỗi xác định không chứa dấu phân cách xác định, chuỗi nguồn sẽ được trả lại, như hàng 6 trong hình dưới đây:
Ngoài chức năng phân xuất chuỗi kí tự con từ cuối chuỗi, hàm RIGHT trong Excl còn được sử dụng để dời số lượng kí tự nhất định từ phía đầu chuỗi, sử dụng công thức sau:
RIGHT(string, LEN(string)-số_kí_tự_cần_dời
Ví dụ dưới đây thực hiện dời 6 kí tự đầu tiên (5 chữ cái và 1 dấu (:)) từ chuỗi A2, công thức mẫu:
=RIGHT(A2, LEN(A2)-6)
Như đã đề cập, hàm RIGHT trong Excel luôn luôn trả về chuỗi văn bản ngay cả hi giá trị nguồn là một con số. Nhưng nếu muốn sử lý dữ liệu số và trả kết quả là số thì sao? Một giải pháp đơn giản là sử dụng tổ hợp hàm RIGHT trong hàm VALUE để chuyển chuỗi nguồn từ đơn vị số sang đơn vị số.
Ví dụ, để kéo 5 kí tự cuối từ chuỗi A2 và chuyển kí tự phân tách thành số, dùng công thức:
=VALUE(RIGHT(A2, 5))
Kết quả trả về như bảng dưới đây:
Vì hàm RIGHT chỉ sử dụng được với chuỗi văn bản trong khi ngày tháng được thể hiện bằng những con số ẩn trong hệ thống Excel, hàm RIGHT không thể lấy lại một phần của ngày như ngày, tháng, hay năm. Nếu cố thực hiện, kết quả trả về là một vài chữ số cuối cùng của một ngày.
Giả sử, ô A1 chứa ngày 18/01/2017. Nếu cố phân xuất năm với hàm RIGHT(A1,4), kết quả trả về là 2753 – 4 con số thể hiện 18/1/2017 trong hệ thống Excel.
Vậy làm thể nào để lấy lại một phần nhất định của ngày? Sử dụng hàm sau:
Kết quả ra như bảng dưới đây:
Nếu ngày tháng được thể hiện bằng chuỗi văn bản, thường xảy ra trong trường hợp xuất dữ liệu từ nguồn bên ngoài, có thể sử dụng hàm RIGHT để kéo một vài kí tự là một phần xác định của ngày ở cuối cùng của dãy.
Hàm Right trong Excel không hiệu quả, nguyên nhân và các khắc phục.
Nếu công thức hàm RIGHT không hiệu quả trong trang tính, hầu hết là do những nguyên nhân sau:
Để có thể ứng dụng tốt Excel vào trong công việc, chúng ta không chỉ nắm vững được các hàm mà còn phải sử dụng tốt cả các công cụ của Excel. Những hàm nâng cao giúp áp dụng tốt vào công việc như SUMIFS, COUNTIFS, SUMPRODUCT, INDEX + MATCH … Những công cụ thường sử dụng là Data validation, Conditional formatting, Pivot table …
Toàn bộ những kiến thức này các bạn đều có thể học được trong khóa học EX101 – Excel từ cơ bản tới chuyên gia của Học Excel Online. Hiện nay hệ thống đang có ưu đãi rất lớn cho bạn khi đăng ký tham gia khóa học. Chi tiết xem tại: HocExcel.Online