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

Hàm Right 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 loại 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ì chúng ta cũng có hàm 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.

Bạn có thể tải xuống Mẫu Excel Hàm Quyền VBA này tại đây - Mẫu Excel Hàm Quyền VBA

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ờ cho 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 ta 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ố để giải quyết, 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 để nhận được giá trị đầy đủ.

Mã:

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

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

Ví dụ số 2

Bây giờ hãy xem thêm một ví dụ, 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 phải động trong Excel VBA

Nếu bạn quan sát hai ví dụ trước của chúng tôi, chúng tôi đã cung cấp số đối số độ dài theo cách thủ công. Nhưng đây không phải là quy trình phù hợp để thực hiện công việc.

Trong mỗi chuỗi ký tự bên phải là khác nhau trong mỗi trường hợp. Chúng tôi không thể tham chiếu độ dài của các ký tự theo cách thủ công cho từng giá trị một cách khác nhau. Đây là nơi mà hàm chuỗi khác “Guid” đóng một vai trò quan trọng.

Hàm hướng dẫn trả về vị trí ký tự được cung cấp trong giá trị chuỗi được cung cấp. Ví dụ, Guid (1, "Bangalore", "a") trả về vị trí của chữ cái "a" trong chuỗi "Bangalore" từ ký tự đầu tiên (1) .

Trong trường hợp này, kết quả là 2 vì từ vị trí ký tự đầu tiên của chữ “a” là vị trí thứ 2.

Nếu tôi thay đổi vị trí bắt đầu từ 1 thành 3, nó sẽ trả về 5.

Hướng dẫn (3, "Bangalore", "a") .

Lý do tại sao nó trả về 5 vì tôi đã đề cập đến vị trí bắt đầu để tìm kiếm chữ cái “a” chỉ từ chữ cái thứ 3. Vì vậy, vị trí của thứ hai xuất hiện "a" là 5.

Vì vậy, để tìm ký tự khoảng trắng của mỗi chuỗi, chúng ta có thể sử dụng điều này. Khi chúng ta tìm thấy vị trí ký tự khoảng trắng, chúng ta cần trừ đi vị trí đó khỏi tổng độ dài của chuỗi bằng cách sử dụng LEN.

Ví dụ trong chuỗi “New York”, tổng số ký tự là 8 bao gồm cả khoảng trắng và vị trí của ký tự khoảng trắng là thứ 4. Vì vậy 8-4 = 4 bên phải sẽ trích ra 4 ký tự từ bên phải.

Bây giờ, hãy nhìn vào đoạn mã dưới đây để bạn tham khảo.

Mã:

 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 

Trong đoạn mã trên, biến “L” sẽ trả về 14 và biến “S” sẽ trả về 8.

Trong công thức bên phải VBA, tôi đã áp dụng L - S tức là 14-8 = 6. Vì vậy, từ phía bên phải 6 ký tự tức là "Clarke".

Vòng lặp với chức năng bên phải trong Excel VBA

Khi chúng ta cần áp dụng hàm VBA RIGHT với nhiều ô, chúng ta cần đưa hàm này vào bên trong các vòng lặp. Ví dụ, hãy nhìn vào hình ảnh dưới đây.

Chúng tôi không thể áp dụng nhiều dòng mã để trích xuất một chuỗi từ phía bên phải. Vì vậy, chúng ta cần bao gồm các vòng lặp. Đoạn mã dưới đây sẽ làm điều đó cho dữ liệu trên.

Mã:

 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.


$config[zx-auto] not found$config[zx-overlay] not found