Овај водич ће показати како користити функцију ИнСтрРев ВБА за проналажење текста са десне стране …
ИнСтрРев функција
ВБА ИнСтрРев функција тражи положај подниза унутар низа. Он враћа бројање позиција с лева на десно, али врши претрагу од краја низа до почетка.
ВБА ИнСтрРев Финд Субстринг
ВБА ИнСтрРев функција се може користити за проналажење положаја подниз у низу.
12345678 | Суб ИнСтрРевЕкампле_1 ()МсгБок ИнСтрРев ("АБЦАБЦ", "Ц") 'Резултат је: 6МсгБок ИнСтрРев ("АБЦАБЦ", "БЦ") 'Резултат је: 5МсгБок ИнСтрРев ("Ла Ла Ланд", "Л") 'Резултат је: 7МсгБок ИнСтрРев ("Ла Ла Ланд", "Ла") 'Резултат је: 7МсгБок ИнСтрРев ("Ла Ла Ланд", "Ла") 'Резултат је: 4МсгБок ИнСтрРев ("Ла Ла Ланд", "М") 'Резултат је: 0Енд Суб |
ВБА ИнСтрРев почетна позиција
ВБА ИнСтрРев функција може започети потрагу за поднизом са додељене позиције која се рачуна слева надесно.
12345678 | Суб ИнСтрРевЕкампле_2 ()МсгБок ИнСтрРев ("Ла Ла Ланд", "Л") 'Резултат је: 7МсгБок ИнСтрРев ("Ла Ла Ланд", "Л", 8) 'Резултат је: 7МсгБок ИнСтрРев ("Ла Ла Ланд", "Л", 7) 'Резултат је: 7МсгБок ИнСтрРев ("Ла Ла Ланд", "Л", 6) 'Резултат је: 4МсгБок ИнСтрРев ("Ла Ла Ланд", "Л", 4) 'Резултат је: 4МсгБок ИнСтрРев ("Ла Ла Ланд", "Л", 3) 'Резултат је: 1Енд Суб |
ВБА програмирање | Генератор кода ради за вас!
ВБА ИнСтрРев осетљивост на велика и мала слова
ВБА ИнСтрРев функција подразумевано разликује велика и мала слова. То понашање можете променити на велика и мала слова помоћу опционог параметра. У том случају морате дефинисати и почетну позицију претраживања.
123456789 | Суб ИнСтрРевЕкампле_3 ()'ИнстрРев подразумевано разликује велика и мала словаМсгБок ИнСтрРев ("Ла Ла Ланд", "Л") 'Резултат је: 7МсгБок ИнСтрРев ("Ла Ла Ланд", "л") 'Резултат је: 0'ИнстрРев може да изврши претраге које не разликују велика и мала словаМсгБок ИнСтрРев ("Ла Ла Ланд", "Л", -1, вбТектЦомпаре) 'Резултат је: 7МсгБок ИнСтрРев ("Ла Ла Ланд", "л", -1, вбТектЦомпаре) 'Резултат је: 7Енд Суб |
ВБА ИнСтрРев Последњи простор
ВБА ИнСтрРев функција може пронаћи позицију последњег размака у низу.
123456789 | Суб ИнСтрРевЕкампле_4 ()МсгБок ИнСтрРев ("Ла Ла Ланд", "")Резултат је: 6МсгБок ИнСтрРев ("Леонардо да Винчи", "")"Резултат је: 12МсгБок ИнСтрРев ("Нека сила буде са вама", "")"Резултат је: 22Енд Суб |
ВБА ИнСтрРев Предзадњи простор
ВБА ИнСтрРев функција може пронаћи позицију претпоследњег размака у низу. Можемо користити ВБА ИнСтрРев функцију да пронађемо последњи простор у низу, а затим можемо поново да користимо ИнСтрРев са новом полазном тачком да пронађемо позицију претпоследњег размака
12345678910111213 | Суб ИнСтрРевЕкампле_5 ()Дим ЛастПос као цео бројЛастПос = ИнСтрРев ("Нека сила буде са вама", "")Резултат МсгБок ЛастПос -а је: 22Дим СецондЛастПос као цео бројСецондЛастПос = ИнСтрРев ("Нека сила буде са вама", "", ЛастПос - 1)Резултат МсгБок СецондЛастПос је: 17'ИнСтрРев је започео претрагу простора непосредно пре последњег простора'Наћи ће претпосљедњи простор јер претражује здесна налијевоЕнд Суб |
Уморни сте од тражења примера ВБА кода? Испробајте АутоМацро!
ВБА ИнСтрРев Враћа име датотеке
ВБА ИнСтрРев функција може се користити за једноставно враћање имена датотеке из низа који садржи путању и име датотеке. Користићемо функцију ИнСтрРев са функцијама ВБА Лен и ВБА Десно.
ВБА Лен функција враћа дужину низа:
1 | МсгБок Лен ("КСБЦКС") 'Резултат је: 4 |
ВБА Ригхт функција враћа н знакова са краја низа:
1 | МсгБок Десно ("АБЦДЕ", 2) 'Резултат је: ДЕ |
Можемо користити функцију ИнСтрРев за проналажење последњег појављивања „\“ у имену путање и користити функцију Лен за израчунавање дужине имена датотеке. Десно тада може издвојити име датотеке.
12345678910111213141516171819202122232425262728 | Суб ИнСтрРевЕкампле_4 ()Дим ПатхЕк Ас СтрингПатхЕк = "Ц: \ МиФилес \ Отхер \ УсефулФиле.пдф"Дим Име датотекеЕк као низФиленамеЕк = Десно (ПатхЕк, Лен (ПатхЕк) - ИнСтрРев (ПатхЕк, "\"))МсгБок ФиленамеЕк 'Резултат је: УсефулФиле.пдф'Хајде да разбијемо овај кодМсгБок Лен (ПатхЕк)'Ово је дужина назива пута (31)МсгБок ИнСтрРев (ПатхЕк, "\")'Ово је позиција последњег \ у низуМсгБок Лен (ПатхЕк) - ИнСтрРев (ПатхЕк, "\")'Ово је дужина назива датотеке (14)'Разлика између пуне дужине и положаја последњег \ у низу'(31-27 = 14)'Сада знамо дужину назива датотеке и наравно да је на крају„Права функција је идеална за ову ситуацијуФиленамеЕк = Десно (ПатхЕк, Лен (ПатхЕк) - ИнСтрРев (ПатхЕк, "\"))Енд Суб |