Hàm Quyền VBA (Ví dụ) - Hướng dẫn từng bước để Excel VBA Right

Hàm phải trong VBA Excel

Hàm Right cũng giống như trong cả hàm worksheet và VBA, công dụng của hàm này là nó cung cấp cho chúng ta chuỗi con từ một chuỗi đã cho nhưng việc tìm kiếm được thực hiện từ phải sang trái của chuỗi, đây là một kiểu hàm chuỗi trong VBA được sử dụng với phương thức hàm application.worksheet.

Hàm RIGHT trong Excel VBA được sử dụng để trích xuất các ký tự từ phía bên phải của các giá trị văn bản được cung cấp. Trong excel, chúng ta có nhiều hàm văn bản để xử lý dữ liệu dựa trên văn bản. Một số chức năng hữu ích là hàm LEN, LEFT, RIGHT, MID để trích xuất các ký tự từ các giá trị văn bản. Ví dụ phổ biến của việc sử dụng các hàm này là trích xuất họ và tên riêng biệt với tên đầy đủ.

Công thức RIGHT cũng có trong trang tính. Trong VBA, chúng ta cần dựa vào lớp hàm trang tính để truy cập hàm VBA RIGHT; thay vào đó, chúng tôi cũng có chức năng RIGHT tích hợp trong VBA.

Bây giờ hãy xem cú pháp bên dưới của công thức VBA RIGHT.

  • Chuỗi: Đây là giá trị của chúng tôi và từ giá trị này, chúng tôi đang cố gắng trích xuất các ký tự từ phía bên phải của chuỗi.
  • Độ dài: Từ Chuỗi được cung cấp , chúng ta cần bao nhiêu ký tự. Nếu chúng ta cần bốn ký tự từ phía bên phải, chúng ta có thể cung cấp đối số là 4.

Ví dụ: nếu chuỗi là “Điện thoại di động” và nếu chúng ta chỉ muốn trích xuất từ ​​“Điện thoại”, chúng ta có thể cung cấp đối số như bên dưới.

RIGHT (“Điện thoại di động,” 5)

Lý do tại sao tôi đề cập đến số 5 vì từ “Điện thoại” có 5 chữ cái trong đó. Trong phần tiếp theo của bài viết, chúng ta sẽ xem cách chúng ta có thể sử dụng nó trong VBA.

Ví dụ về hàm Right VBA trong Excel

Sau đây là các ví dụ về Hàm Quyền VBA trong Excel.

Ví dụ 1

Tôi sẽ chỉ cho bạn một ví dụ đơn giản để bắt đầu quá trình tố tụng. Giả sử bạn có chuỗi “New York” và nếu bạn muốn trích xuất 3 ký tự từ bên phải, hãy làm theo các bước dưới đây để viết mã.

Bước 1: Khai báo biến là VBA String.

Mã:

Sub Right_Example1 () Dim k As String End Sub

Bước 2: Bây giờ, đối với biến này, chúng ta sẽ gán giá trị bằng cách áp dụng hàm RIGHT.

Mã:

Sub Right_Example1 () Dim k As String k = Right (End Sub

Bước 3: Đối số đầu tiênChuỗi và chuỗi của chúng tôi cho ví dụ này là “New York”.

Mã:

Sub Right_Example1 () Dim k As String k = Right ("New York", End Sub

Bước 4: Tiếp theo là chúng ta cần bao nhiêu ký tự từ chuỗi được cung cấp. Trong ví dụ này, chúng ta cần 3 ký tự.

Mã:

Sub Right_Example1 () Dim k As String k = Right ("New York", 3) End Sub

Bước 5: Chúng ta có 2 đối số để xử lý, vậy là chúng ta đã hoàn thành. Bây giờ chỉ định giá trị của biến này trong hộp thông báo trong VBA.

Mã:

Sub Right_Example1 () Dim k As String k = Right ("New York", 3) MsgBox k End Sub

Chạy mã bằng phím F5 hoặc theo cách thủ công và xem kết quả trong hộp thông báo.

Trong từ “New York” từ phía bên phải 3 ký tự là “ork”.

Bây giờ tôi sẽ thay đổi độ dài từ 3 thành 4 để có giá trị đầy đủ.

Mã:

Sub Right_Example1 () Dim k As String k = Right ("New York", 4) MsgBox k End Sub

Chạy mã này theo cách thủ công hoặc sử dụng phím F5. Sau đó, chúng ta sẽ nhận được “York”.

Ví dụ số 2

Bây giờ hãy xem một ví dụ khác, lần này hãy coi giá trị chuỗi là “Michael Clarke”.

Nếu bạn cung cấp độ dài là 6, kết quả là chúng ta sẽ nhận được "Clarke".

Mã:

Sub Right_Example1 () Dim k As String k = Right ("Michael Clarke", 6) MsgBox k End Sub

Chạy mã này bằng phím F5 hoặc theo cách thủ công để xem kết quả.

Hàm động quyền trong Excel VBA

If you observe our previous two examples, we have supplied the length argument numbers manually. But this is not the right process to do the job.

In each of the string, right-side characters are different in each case. We cannot refer to the length of the characters manually for each value differently. This where the other string function “Instr” plays a vital role.

Instr function returns the supplied character position in the supplied string value. For example, Instr (1,” Bangalore,” a”) returns the position of the letter “a” in the string “Bangalore” from the first (1) character.

In this case, the result is 2 because from the first character position of the letter “a” is the 2nd position.

If I change the starting position from 1 to 3, it will return 5.

Instr (3,” Bangalore,” a”).

The reason why it returns 5 because I mentioned the starting position to look for the letter “a” only from the 3rd letter. So the position of the second appeared “a” is 5.

So, to find the space character of each string, we can use this. Once we find the space character position, we need to minus that from the total length of the string by using LEN.

For example, in the string “New York,” the total number of characters is 8, including space, and the position of the space character is 4th. So 8-4 = 4 right will extract 4 characters from the right.

Now, look at the below code for your reference.

Code:

Sub Right_Example3() Dim k As String Dim L As String Dim S As String L = Len("Michael Clarke") S = InStr(1, "Michael Clarke", " ") k = Right("Michael Clarke", L - S) MsgBox k End Sub

In the above code variable, “L” will return 14, and the variable “S” will return 8.

In the VBA right formula, I have applied L - S, i.e., 14-8 = 6. So from right side 6 characters, i.e., “Clarke.”

Loops with Right Function in Excel VBA

When we need to apply the VBA RIGHT function with many cells, we need to include this inside the loops. For example, look at the below image.

We cannot apply many lines of the code to extract a string from the right side. So we need to include loops. The below code will do it for the above data.

Code:

Sub Right_Example4 () Dim k As String Dim L As String Dim S As String Dim a As Integer For a = 2 To 5 L = Len (Cells (a, 1) .Value) S = InStr (1, Cells (a, 1) ) .Value, "") Cells (a, 2) .Value = Right (Cells (a, 1), L - S) Next a End Sub

Kết quả của đoạn mã này như sau.

thú vị bài viết...