Правилна функция на VBA (примери) - Стъпка по стъпка Ръководство за Excel VBA Право

Правилна функция в VBA Excel

Дясната функция е същата както във функцията на работния лист, така и във VBA, използването на тази функция е, че ни дава подниза от даден низ, но търсенето се извършва отдясно наляво на низа, това е тип низ функция във VBA използва се с метода на функцията application.worksheet.

НАДЯСНО Функцията в Excel VBA се използва за извличане на символи от дясната страна на предоставените текстови стойности. В Excel има много текстови функции за работа с текстово базирани данни. Някои от полезните функции са LEN, LEFT, RIGHT, MID функция за извличане на символи от текстовите стойности. Често срещаният пример за използване на тези функции е извличане на собствено име и фамилия отделно от пълното име.

Формулата НАДЯСНО също е там в работния лист. Във VBA трябва да разчитаме на клас функция на работния лист за достъп до функцията VBA RIGHT; по-скоро имаме вградена функция НАДЯСНО и във VBA.

Сега разгледайте синтаксиса по-долу на формулата VBA RIGHT.

  • String: Това е нашата стойност и от тази стойност се опитваме да извлечем символите от дясната страна на низа.
  • Дължина: От предоставения низ, колко символа ни трябват. Ако се нуждаем от четири знака от дясната страна, можем да предоставим аргумента като 4.

Например, ако низът е „Мобилен телефон“ и ако искаме да извлечем само думата „Телефон“, можем да предоставим аргумента като по-долу.

НАДЯСНО („Мобилен телефон“, 5)

Причината, поради която споменах 5, защото думата „Телефон“ има 5 букви в себе си. В следващия раздел на статията ще видим как можем да го използваме във VBA.

Примери за правилната функция на Excel VBA

По-долу са примерите за VBA Excel с правилна функция.

Пример # 1

Ще ви покажа един прост пример за започване на производството. Да приемем, че имате низа „Ню Йорк“ и ако искате да извлечете 3 знака отдясно, следвайте стъпките по-долу, за да напишете кода.

Стъпка 1: Декларирайте променливата като VBA String.

Код:

Sub Right_Example1 () Dim k As String End Sub

Стъпка 2: Сега за тази променлива ще присвоим стойността, като приложим функцията НАДЯСНО.

Код:

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

Стъпка 3: Първият аргумент е String, а нашият низ за този пример е „Ню Йорк“.

Код:

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

Стъпка 4: Следва колко символа се нуждаем от предоставения низ. В този пример се нуждаем от 3 знака.

Код:

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

Стъпка 5: Имаме 2 аргумента, с които да се справим, така че сме готови. Сега задайте стойността на тази променлива в полето за съобщения във VBA.

Код:

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

Изпълнете кода с помощта на клавиша F5 или ръчно и вижте резултата в поле за съобщение.

В думата „Ню Йорк“ от дясната страна 3 знака са „орк“.

Сега ще променя дължината от 3 на 4, за да получа пълната стойност.

Код:

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

Стартирайте този код ръчно или с помощта на клавиша F5. След това ще получим „Йорк“.

Пример # 2

Сега разгледайте още един пример, този път разгледайте стойността на низа като „Майкъл Кларк“.

Ако посочите дължината като 6, в резултат ще получим „Clarke“.

Код:

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

Изпълнете този код с помощта на клавиша F5 или ръчно, за да видите резултата.

Динамична дясна функция в 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 ). Стойност, "") Клетки (a, 2). Стойност = дясна (клетки (a, 1), L - S) Следваща крайна подгрупа

Резултатът от този код е както следва.

Интересни статии...