Съдържание
В тази статия ще да намерите на последна поява на символ в низ в Excel . Нашият набор от данни за извадката има три колони : Име на компанията , Код на служителя , и Последна поява . Код на служителя съдържа името, възрастта и отдела на служителя.
За първи път 4 ще намерим позицията на наклонената черта напред " / " в за всички стойности в Код на служителя . След това ще изведем низове след последната наклонена черта в последния 2 методи.
Изтегляне на работна тетрадка за практика
Намиране на последната поява на символ в String.xlsm6 начина в Excel за намиране на последната поява на символ в низ
1. използване на функциите FIND & SUBSTITUTE в Excel за намиране на позицията на последното появяване на символ в низ
За първия метод ще използваме НАМЕРЕТЕ функцията ЗАМЕСТВАНЕ функцията CHAR и функцията LEN функция към да намерите на последно позицията на наклонената черта в нашия низ .
Стъпки:
- Първо, въведете следната формула в клетка D5 .
=FIND(CHAR(134),SUBSTITUTE(C5,"/",CHAR(134),(LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))/LEN("/"))))
Разбивка на формулата
Основната ни функция е НАМЕРЕТЕ Ще намерим CHAR(134) стойност в нашия низ.
- CHAR(134)
- Изход: † .
- Трябва да зададем символ, който не присъства в нашите низове. Избрахме го, защото се среща рядко в низовете. Ако по някакъв начин го имате във вашите низове, променете го на нещо, което не присъства във вашите низове (например " @ ", " ~ " и т.н.).
- SUBSTITUTE(C5,"/",CHAR(134),(LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))/LEN("/")) -> става,
- SUBSTITUTE(C5,"/","†",(17-LEN("Mike32Marketing"))/1) -> става,
- SUBSTITUTE("Mike/32/Marketing","/","†",(17-15)/1)
- Изход: "Mike/32†Marketing" .
- Сега нашата пълна формула става,
- =FIND("†", "Mike/32†Marketing")
- Изход: 8 .
- Второ, натиснете ВЪВЕДЕТЕ .
Ще видим стойността 8 Ако преброим ръчно от лявата страна, ще получим 8 като позиция за слъш в клетка C5 .
- Накрая използвайте Дръжка за пълнене за да копирате формулата надолу.
Така получаваме позицията на последна поява на символ в нашия низ .
Прочетете още: Функция на Excel: FIND срещу SEARCH (сравнителен анализ)
2. прилагане на функциите MATCH & SEQUENCE в Excel за намиране на позицията на последната поява на символ в низ
За втория метод ще използваме MATCH функцията СЕКВИНЦИЯ функцията MID и функцията LEN за намиране на позицията на последна поява на символ в низ . Запомнете СЕКВИНЦИЯ е достъпна само за Excel 365 или Excel 2021 .
Стъпки:
- Първо, въведете следната формула в клетка D5 .
=MATCH(2,1/(MID(C5,SEQUENCE(LEN(C5)),1)="/")
Разбивка на формулата
- ПОСЛЕДОВАТЕЛНОСТ(LEN(C5))
- Output: {1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17} .
- Сайтът LEN измерва дължината на клетка C5 . СЕКВИНЦИЯ функцията връща списък от числа, подредени последователно в масив.
- MATCH(2,1/(MID(C5,{1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17},1)=”/”))
- Изход: 8 .
- Сайтът Мач функция е намирането на последния 1 стойност в нашата формула. Тя е в 8. позиция.
- Второ, натиснете ВЪВЕДЕТЕ .
С помощта на формулата намерихме позицията на наклонена черта напред като 8 в нашия низ .
- Накрая използвайте Дръжка за пълнене към Автоматично попълване формулата.
В заключение приложихме друга формула за намиране на последна позиция на символ в низове .
Прочетете още: Как да намерите символ в низ в Excel (8 лесни начина)
3. Използване на формула за масив в Excel за намиране на позицията на последната поява на символ в низ
Ще използваме РЕД функцията INDEX функцията MATCH . MID , и LEN функции за създаване на формула на масив за намиране на позицията на последна поява на символ в низ .
Стъпки:
- Първо, въведете формулата отдолу, за да клетка D5 .
=MATCH(2,1/(MID(C5,ROW($C$1:INDEX(C:C,LEN(C5))),1)="/"))
Разбивка на формулата
Формулата е подобна на метода 2 . Използваме РЕД и INDEX функция, за да възпроизведете резултата като СЕКВИНЦИЯ функция.
- РЕД($C$1:INDEX(C:C,LEN(C5))
- Output: {1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17} .
- Виждаме, че изходът е същият. INDEX връща стойността на даден диапазон. LEN преброява дължината на низа от клетка C5 . Накрая. РЕД връща функцията клетка стойности от 1 към клетка дължина на C5 Останалата част от формулата е същата като при метода 2 .
- Второ, натиснете ВЪВЕДЕТЕ .
Имаме 8 като стойността, както се очаква. Нашата формула работи безупречно.
Забележка: Използваме Excel 365 Ако използвате по-стара версия, ще трябва да натиснете CTRL + SHIFT + ВЪВЕДЕТЕ .
- Накрая щракнете два пъти върху или плъзнете надолу Дръжка за пълнене .
Ето как трябва да изглежда последната стъпка.
Прочетете още: Намиране на първата среща на стойност в диапазон в Excel (3 начина)
Подобни четива
- Как да намерите * символ, който не е заместващ символ в Excel (2 метода)
- Как да използвате формулата на Excel за намиране на номер на последния ред с данни (2 начина)
- Намиране на последната стойност в колона, по-голяма от нула, в Excel (2 лесни формули)
- Как да намерите връзки в Excel
- Намиране на външни връзки в Excel (6 бързи метода)
4. Функция, дефинирана от потребителя, за намиране на позицията на последното появяване на символ в низ
В този метод ще използваме потребителски VBA формула за намиране на последната позиция на символ в низ . Без да се бавим повече, нека се впуснем в действието.
Стъпки:
- Първо, натиснете ALT + F11 за да извикате VBA прозорец.
Можете да изберете Visual Basic от Разработчик да го направите и вие.
- Второ, от Вмъкване на >>> изберете Модул .
- Трето, копие и паста следния код.
Функция LOccurence(x1 като String, x2 като String) LOccurence = InStrRev(x1, x2) Край на функцията
Създадохме потребителска функция, наречена " ЛОКУРЕНЦИЯ ". InStrRev е VBA функция, която връща крайната позиция на символ . Ще въведем нашите клетка стойност като x1 и конкретния символ (в нашия случай това е наклонена черта напред ) като x2 в тази потребителска функция.
- След това затворете VBA и отидете в " Позиция VBA " лист .
- Въведете следната формула в клетка D5 .
=LOccurence(C5,"/")
В тази потребителска функция ѝ казваме да намери позицията на последна поява на наклонена черта напред в низ от клетка C5 .
- След това натиснете ВЪВЕДЕТЕ .
Имаме 8 както се очаква, тъй като Последно възникнало позиция на наклонена черта напред .
- Накрая можем да плъзнем формулата надолу с помощта на Дръжка за пълнене .
По този начин приложихме още една формула за намиране на позицията на последна поява на символ .
Прочетете още: Как да намерите символ в низ отдясно в Excel (4 лесни метода)
5. Използване на комбинирани функции в Excel за намиране на последната поява на символ в низ
Дотук видяхме как да намерим последната възникнала позиция на даден символ. Сега ще използваме ТЪРСЕНЕ НА функцията ПРАВИЛНО функцията ЗАМЕСТВАНЕ . LEN . CHAR за извеждане на низа след последното появяване на даден символ. По-просто казано, ще изведем отдела на служителите от Колона "Код на служителя .
Стъпки:
- Първо, въведете следната формула в клетка D5 .
=RIGHT(C5,LEN(C5)-SEARCH(CHAR(134),SUBSTITUTE(C5,"/",CHAR(134),LEN(C5)-LEN(SUBSTITUTE(C5,"/","")))))
Разбивка на формулата
- SUBSTITUTE(C5,"/",CHAR(134),LEN(C5)-LEN(SUBSTITUTE(C5,"/",""))) -> става,
- SUBSTITUTE(C5,"/",CHAR(134),2)
- Изход: "Mike/32†Marketing" .
- Сайтът ЗАМЕСТВАНЕ замества дадена стойност с друга стойност. В нашия случай тя замества всяка наклонена черта напред с † в първата част и с празно място във втората част. След това LEN функцията измерва дължината на тази дължина. Така получихме нашата стойност.
- SEARCH("†", "Mike/32†Marketing")
- Изход: 8 .
- Сайтът ТЪРСЕНЕ НА функцията намира специалния символ в предишния ни изход. Следователно тя го намери в 8.
- Накрая нашата формула се свежда до, ПРАВИЛНО(C5,9)
- Изход: "Маркетинг" .
- Сайтът ПРАВИЛНО функцията връща стойността на клетката до определен брой символи от дясната страна. наклонена черта напред в 8. Дължината на клетка C5 е 17 , и 17 - 8 = 9 . Следователно имаме 9 символи от дясната страна като изход.
- Второ, натиснете ВЪВЕДЕТЕ .
Получихме низове след последния наклонена черта напред .
- Накрая използвайте Дръжка за пълнене към Автоматично попълване формулите в клетка обхват D6:D10 .
По този начин извлекохме низове след последна поява на символ .
Прочетете още: Как да намерите дали клетката съдържа определен текст в Excel
6. Потребителска формула VBA в Excel за намиране на последното появяване на символ в низ
За последния метод, Ще използваме потребителски VBA формула за извличане на низ след наклонена черта напред .
Стъпки:
- Първо, натиснете ALT + F11 за да извикате VBA прозорец.
Можете да изберете Visual Basic от Разработчик да го направите и вие.
- Второ, от Вмъкване на >>> изберете Модул както направихме в метода 4 .
- Трето, копие и паста следния код.
Функция LastString(cRange As Range, cString As String) Dim cLength As Integer cLength = Len(cRange) For x = cLength To 1 Step -1 If Mid(cRange, x - 1, 1) = cString Then LastString = x Exit Function End If Next x End Function
Създаваме потребителска функция, наречена " LastString ". Тази функция ще върне началната позиция на низове след последна поява на характер.
- След това въведете формулата отдолу, за да клетка D5 .
=RIGHT(C5,LEN(C5)-LastString(C5,"/")+1)
Разбивка на формулата
- LastString(C5,"/")
- Изход: 9 .
- Тук получаваме началната позиция на низ веднага след последната наклонена черта напред .
- LEN(C5)
- Изход: 17 .
- LEN(C5)-LastString(C5,"/")+1
- Изход: 9.
- Трябва да добавим 1 в противен случай ще получим стойност със символа " M ".
- Формулата ни се свежда до ПРАВИЛНО(C5,9)
- Изход: " Маркетинг ".
- Натиснете ВЪВЕДЕТЕ .
Ще получим стойността " Маркетинг ".
- Накрая, Автоматично попълване формулата до клетка C10 .
Постигнахме целта си. Формулата работи по предназначение.
Прочетете още: Как да намерите последния ред с определена стойност в Excel (6 метода)
Практически раздел
Приложили сме набори от данни за упражнения освен всеки метод в Excel файл. Можете да се упражнявате, за да се справяте по-добре с тази задача.
Заключение
Показахме ви 6 методи в Excel за да намерите последна поява на символ в низ . Ако имате някакви проблеми във връзка с тях, не се колебайте да коментирате по-долу. Благодаря за четенето и продължавайте да се усъвършенствате!