ВБА исправна функција (примери) - Корак по корак Водич за Екцел ВБА Тачно

Права функција у ВБА Екцелу

Десна функција је иста као и у функцији радног листа и у ВБА, употреба ове функције је у томе што нам даје подниз из датог низа, али претрага се врши с десна на лево од низа, ово је врста функције низа у ВБА користи се са апликацијом.метод функције радног листа.

ДЕСНА Функција у програму Екцел ВБА користи се за издвајање знакова са десне стране испоручених вредности текста. У Екцелу имамо много текстуалних функција за обраду података заснованих на тексту. Неке од корисних функција су ЛЕН, ЛЕФТ, РИГХТ, МИД функција за издвајање знакова из текстуалних вредности. Уобичајени пример коришћења ових функција је издвајање имена и презимена одвојено од пуног имена.

ПРАВА формула је такође на радном листу. У ВБА се морамо ослонити на класу функција радног листа за приступ функцији ВБА РИГХТ; него имамо уграђену функцију ДЕСНО и у ВБА.

Сада погледајте доњу синтаксу формуле ВБА ДЕСНО.

  • Низ: Ово је наша вредност и из ове вредности покушавамо да издвојимо знакове са десне стране низа.
  • Дужина: Колико је знакова потребно из испорученог низа . Ако су нам потребна четири знака с десне стране, аргумент можемо навести као 4.

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

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

Разлог зашто сам споменуо 5, јер реч „Телефон“ садржи 5 слова. У следећем одељку чланка видећемо како можемо да га користимо у ВБА.

Примери Екцел ВБА исправне функције

Следе примери ВБА Екцел исправне функције.

Пример # 1

Показаћу вам једноставан пример за започињање поступка. Претпоставимо да имате низ „Нев Иорк“ и ако желите да издвојите 3 знака с десне стране, следите кораке у наставку да бисте написали код.

Корак 1: Прогласите променљиву као ВБА низ.

Шифра:

Суб Ригхт_Екампле1 () Дим к Ас Стринг Енд Суб

Корак 2: Сада ћемо овој променљивој доделити вредност применом функције ДЕСНО.

Шифра:

Суб Ригхт_Екампле1 () Дим к Ас Стринг к = Ригхт (Енд Суб

Корак 3: Први аргумент је Стринг, а наш низ за овај пример је „Нев Иорк“.

Шифра:

Суб Ригхт_Екампле1 () Дим к Ас Стринг к = Ригхт ("Нев Иорк", Енд Суб

Корак 4: Следи колико знакова нам треба из испорученог низа. У овом примеру су нам потребна 3 знака.

Шифра:

Суб Ригхт_Екампле1 () Дим к Ас Стринг к = Ригхт ("Нев Иорк", 3) Енд Суб

Корак 5: Имамо 2 аргумента за решавање, па смо завршили. Сада доделите вредност ове променљиве у оквиру за поруке у ВБА.

Шифра:

Суб Ригхт_Екампле1 () Дим к Ас Стринг к = Ригхт ("Нев Иорк", 3) МсгБок к Енд Суб

Покрените код помоћу тастера Ф5 или ручно и погледајте резултат у оквиру за поруку.

У речи „Нев Иорк“ са десне стране 3 знака су „орк“.

Сада ћу променити дужину са 3 на 4 да бих добио пуну вредност.

Шифра:

Суб Ригхт_Екампле1 () Дим к Ас Стринг к = Ригхт ("Нев Иорк", 4) МсгБок к Енд Суб

Покрените овај код ручно или помоћу тастера Ф5. Тада ћемо добити „Иорк“.

Пример # 2

Сада погледајте још један пример, овај пут вредност низа сматрајте „Мицхаел Цларке“.

Ако наведете дужину као 6, добићемо „Цларке“ као резултат.

Шифра:

Суб Ригхт_Екампле1 () Дим к Ас Стринг к = Ригхт ("Мицхаел Цларке", 6) МсгБок к Енд Суб

Покрените овај код помоћу тастера Ф5 или ручно да бисте видели резултат.

Динамичка десна функција у програму Екцел ВБА

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:

Суб Ригхт_Екампле4 () Дим к Ас Стринг Дим Л Ас Стринг Дим С Ас Стринг Дим А Ас Интегер Фор а = 2 То 5 Л = Лен (Целлс (а, 1) .Валуе) С = ИнСтр (1, Целлс (а, 1 ) .Валуе, "") Ћелије (а, 2) .Вредност = Десно (Ћелије (а, 1), Л - С) Следећа крајња под

Резултат овог кода је следећи.

Занимљиви Чланци...