Функция VBA InStrRev - Намерете текст отдясно

Съдържание

Този урок ще покаже как да използвате функцията InStrRev VBA за намиране на текст отдясно …

Функция InStrRev

Функцията VBA InStrRev търси позицията на подниза в низ. Той връща броя на позициите отляво надясно, но извършва търсене от края на низа до началото.

VBA InStrRev Намерете подниза

Функцията VBA InStrRev може да се използва за намиране на позицията на подниза в низ.

12345678 Sub InStrRevExample_1 ()MsgBox InStrRev ("ABCABC", "C") 'Резултатът е: 6MsgBox InStrRev ("ABCABC", "BC") Резултатът е: 5MsgBox InStrRev ("La La Land", "L") 'Резултатът е: 7MsgBox InStrRev ("La La Land", "La") 'Резултатът е: 7MsgBox InStrRev ("La La Land", "La") 'Резултатът е: 4MsgBox InStrRev ("La La Land", "M") 'Резултатът е: 0End Sub

VBA InStrRev Изходна позиция

Функцията VBA InStrRev може да започне търсенето на подниза от определена позиция, преброена отляво надясно.

12345678 Sub InStrRevExample_2 ()MsgBox InStrRev ("La La Land", "L") 'Резултатът е: 7MsgBox InStrRev ("La La Land", "L", 8) 'Резултатът е: 7MsgBox InStrRev ("La La Land", "L", 7) "Резултатът е: 7MsgBox InStrRev ("La La Land", "L", 6) 'Резултатът е: 4MsgBox InStrRev ("La La Land", "L", 4) 'Резултатът е: 4MsgBox InStrRev ("La La Land", "L", 3) 'Резултатът е: 1End Sub

VBA програмиране | Code Generator работи за вас!

VBA InStrRev Чувствителност към регистъра

Функцията VBA InStrRev по подразбиране е чувствителна към регистъра. Можете да промените това поведение на регистър на регистър, като използвате незадължителен параметър. В този случай трябва също да определите началната позиция на търсенето.

123456789 Sub InStrRevExample_3 ()„InstrRev по подразбиране е чувствителен към регистърMsgBox InStrRev ("La La Land", "L") 'Резултатът е: 7MsgBox InStrRev ("La La Land", "l") 'Резултатът е: 0„InstrRev може да извършва търсения, нечувствителни към регистъраMsgBox InStrRev ("La La Land", "L", -1, vbTextCompare) "Резултатът е: 7MsgBox InStrRev ("La La Land", "l", -1, vbTextCompare) "Резултатът е: 7End Sub

VBA InStrRev Последно пространство

Функцията VBA InStrRev може да намери позицията на последното пространство в низ.

123456789 Sub InStrRevExample_4 ()MsgBox InStrRev ("La La Land", "")Резултатът е: 6MsgBox InStrRev ("Леонардо да Винчи", "")Резултатът е: 12MsgBox InStrRev ("Нека Силата бъде с вас", "")Резултатът е: 22End Sub

VBA InStrRev Второ до последно място

Функцията VBA InStrRev може да намери позицията на второто до последното място в низ. Можем да използваме функцията VBA InStrRev, за да намерим последното пространство в низ и след това можем да използваме отново InStrRev с нова начална точка, за да намерим позицията на второто до последното пространство

12345678910111213 Sub InStrRevExample_5 ()Затъмнете LastPos като цяло числоLastPos = InStrRev ("Нека Силата бъде с вас", "")Резултатът на MsgBox LastPos е: 22Dim SecondLastPos като цяло числоSecondLastPos = InStrRev ("Нека силата бъде с вас", "", LastPos - 1)Резултатът от MsgBox SecondLastPos е: 17„InStrRev започна търсенето на пространство точно преди последното пространство„Той ще намери последното място, защото търси отдясно налявоEnd Sub

Уморени ли сте от търсене на примери за VBA код? Опитайте AutoMacro!

VBA InStrRev Връщане на името на файла

Функцията VBA InStrRev може да се използва за лесно връщане на името на файла от низ, който съдържа пътя и името на файла. Ще използваме функцията InStrRev с функции VBA Len и VBA Right.

Функцията VBA Len връща дължината на низ:

1 MsgBox Len ("XBCX") 'Резултатът е: 4

Функцията VBA Right връща n знака от края на низ:

1 MsgBox вдясно ("ABCDE", 2) 'Резултатът е: DE

Можем да използваме функцията InStrRev, за да намерим последното появяване на „\“ в името на пътя и да използваме функцията Len за изчисляване на дължината на името на файла. След това Right може да извлече името на файла.

12345678910111213141516171819202122232425262728 Sub InStrRevExample_4 ()Dim PathEx като низPathEx = "C: \ MyFiles \ Other \ UsefulFile.pdf"Dim FilenameEx As StringFilenameEx = Вдясно (PathEx, Len (PathEx) - InStrRev (PathEx, "\"))MsgBox FilenameEx 'Резултатът е: UsefulFile.pdf- Нека разбием този кодMsgBox Len (PathEx)'Това е дължината на името на пътя (31)MsgBox InStrRev (PathEx, "\")'Това е позицията на последния \ в низMsgBox Len (PathEx) - InStrRev (PathEx, "\")'Това е дължината на името на файла (14)„Разликата между пълната дължина и позицията на последния \ в низ'(31-27 = 14)„Сега знаем дължината на името на файла и разбира се, че е в края„Правилната функция е идеална за тази ситуацияFilenameEx = Вдясно (PathEx, Len (PathEx) - InStrRev (PathEx, "\"))End Sub

Така ще помогнете за развитието на сайта, сподели с приятелите си

wave wave wave wave wave