Перейти до основного матеріалу

Як знайти перше, останнє або n-те входження символу в Excel?

Припустимо, у вас є наступний перелік текстових рядків, які включають символ «-», і тепер ви хочете отримати останнє або n-те входження символу «-», у вас є якісь ідеї для вирішення цієї проблеми?


Знайдіть останнє входження символу за формулами

Ось деякі формули, які можуть допомогти вам знайти останню позицію певного символу, будь-ласка, зробіть наступне:

1. Поруч із текстовим рядком введіть або скопіюйте будь-яку з наведених нижче формул у порожню комірку:

=SEARCH("^^",SUBSTITUTE(A2,"-","^^",LEN(A2)-LEN(SUBSTITUTE(A2,"-",""))))
=LOOKUP(2,1/(MID(A2,ROW(INDIRECT("1:"&LEN(A2))),1)="-"),ROW(INDIRECT("1:"&LEN(A2))))

2. Потім перетягніть маркер заповнення до діапазону, до якого ви хочете застосувати цю формулу, і ви отримаєте останнє входження конкретного символу «-», див. Знімок екрана:

Примітка: У наведених формулах A2 вказує значення комірки, яке ви хочете використовувати. І “-”Означає конкретний символ, якому ви хочете отримати останню позицію, ви можете змінити його на будь-який інший символ, як вам потрібно.


Знайдіть останнє входження символу за допомогою функції, визначеної користувачем

Щоб отримати позицію останнього символу “-”, ви також можете створити визначену користувачем функцію, виконайте наступне:

1. Відкрийте робочий аркуш, який ви хочете використовувати.

2. Утримуйте клавішу ALT + F11 ключі, щоб відкрити Вікно Microsoft Visual Basic для програм.

3. Потім натисніть Insert > Модуліта вставте наступний макрос у Вікно модуля.

Код VBA: знайти останнє входження символу

Function LastpositionOfChar(strVal As String, strChar As String) As Long
LastpositionOfChar = InStrRev(strVal, strChar)
End Function

4. Потім збережіть і закрийте цей код, поверніться до аркуша та введіть цю формулу = lastpositionofchar (A2, "-") в порожню комірку, крім ваших даних, див. знімок екрана:

5. А потім перетягніть маркер заповнення до діапазону, необхідного для застосування цієї формули, і поява останнього символу “-” було вилучено з текстових рядків, як показано на наступному знімку екрана:

примітки: У наведеній вище формулі: A2 - це комірка, яка містить дані, які ви хочете використовувати, і “-”- це символ, який вам потрібен, щоб знайти його останню позицію, ви можете змінити їх, як вам потрібно.


Знайдіть перше або n-те входження символу за формулою

Щоб отримати перше або n-те місце конкретного персонажа, застосуйте таку формулу:

1. Введіть або скопіюйте наведені нижче формули в порожню клітинку, куди ви хочете ввести результат, і натисніть Що натомість? Створіть віртуальну версію себе у ключ, щоб отримати перший результат:

=FIND(CHAR(160),SUBSTITUTE(A2,"-",CHAR(160),2))

2. Потім перетягніть маркер заповнення до комірок, до яких потрібно застосувати цю формулу, і позиції другого символу "-" були розраховані, див. Знімок екрана:

Примітка: У наведених формулах A2 вказує значення комірки, яке ви хочете використовувати, “-”Означає конкретний символ, якому ви хочете отримати його позицію, число 2 означає вказане входження символу, якого ви хочете отримати.


Знайдіть перше або n-те явище конкретного символу за допомогою простої функції

з Kutools для ExcelАвтора Знайдіть, де символ відображається N-й у рядку утиліта, ви можете швидко і легко отримати позицію першого або n-го конкретного символу.

Примітка:Щоб застосувати це Знайдіть, де символ відображається N-й у рядку, по-перше, вам слід завантажити Kutools для Excel, а потім швидко та легко застосувати функцію.

після установки Kutools для Excel, будь ласка, зробіть так:

Наприклад, я хочу отримати друге входження символу "-", будь ласка, виконайте наступне:

1. Клацніть клітинку, куди потрібно помістити результат.

2. Потім натисніть Кутулс > Помічник формули > Помічник формули, див. скріншот:

3, в Помічник формул діалогове вікно:

  • Select Пошук опція від Formula тип випадаючий список;
  • Тоді виберіть Знайдіть, де символ відображається N-й у рядку від Виберіть фромулу вікно списку;
  • У Введення аргументів розділу, виберіть клітинку, яка містить текстовий рядок, який ви хочете використовувати, і введіть символ, для якого ви хочете отримати його позицію, нарешті, вкажіть номер, який ви хочете отримати позицію символу.

4. Потім натисніть Ok , а потім перетягніть маркер заповнення вниз до комірок, які потрібно отримати, щоб отримати такий результат, як вам потрібно.

Завантажте та безкоштовну пробну версію Kutools для Excel зараз!


Більше відносних статей:

  • Витягнути все, крім першого / останнього слова в Excel
  • Щоб витягти всі слова з комірки, але перше або останнє слово може допомогти вам видалити непотрібне слово, яке вам потрібно, в цьому випадку, звичайно, ви можете скопіювати потрібні слова та вставити їх в іншу комірку по одному. Але це буде нудно, якщо потрібно витягти кілька значень комірок, крім першого чи останнього слова. Як ви могли швидко та легко витягти всі слова, крім першого чи останнього в Excel?
  • Витяг символів справа наліво в клітинку
  • У цій статті мова піде про витягування або витягування символів праворуч у комірці, доки не буде досягнуто місця для отримання наступного результату на аркуші Excel. Корисна формула в цій статті може швидко і легко вирішити цю роботу.
  • Знайдіть позицію першої малої літери
  • Якщо у вас є список текстових рядків, які містять як великі, так і малі літери, тепер ви хочете дізнатись про позицію першої малої літери з них на аркуші Excel. Як ви могли швидко отримати результат, не рахуючи їх по одному?

Найкращі інструменти продуктивності офісу

🤖 Kutools AI Aide: Революціонізуйте аналіз даних на основі: Інтелектуальне виконання   |  Згенерувати код  |  Створення спеціальних формул  |  Аналізуйте дані та створюйте діаграми  |  Викликати функції Kutools...
Популярні функції: Знайдіть, виділіть або визначте дублікати   |  Видалити порожні рядки   |  Об’єднайте стовпці або клітинки без втрати даних   |   Раунд без Формули ...
Супер пошук: VLookup за кількома критеріями    Багатозначний VLookup  |   VLookup на кількох аркушах   |   Нечіткий пошук ....
Розширений розкривний список: Швидке створення випадаючого списку   |  Залежний спадний список   |  Виберіть розкривний список, що вибирається ....
Менеджер колонок: Додайте конкретну кількість стовпців  |  Перемістити стовпці  |  Перемкнути статус видимості прихованих стовпців  |  Порівняйте діапазони та стовпці ...
Особливості: Фокус сітки   |  Перегляд дизайну   |   Велика панель формул    Диспетчер робочих книг і аркушів   |  Бібліотека ресурсів (автотекст)   |  Вибір дати   |  Об’єднайте робочі аркуші   |  Шифрування/розшифрування клітинок    Надсилайте листи за списком   |  Супер фільтр   |   Спеціальний фільтр (фільтр жирний/курсив/закреслений...) ...
Топ-15 наборів інструментів12 текст Tools (додати текст, Видалити символи, ...)   |   50 + Графік типи (діаграма Ганта, ...)   |   40+ Практичний Формули (Розрахуйте вік на основі дня народження, ...)   |   19 вставка Tools (Вставте QR-код, Вставити зображення зі шляху, ...)   |   12 Перетворення Tools (Числа до слів, Валютна конверсія, ...)   |   7 Злиття та розділення Tools (Розширені комбіновані ряди, Розділені клітини, ...)   |   ... і більше

Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу.  Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...

Опис


Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
Comments (3)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Using LET to define variables. 
Find Last occurrence of;
=LET(strFind,"-",strFlag,"¤",FIND(strFlag,SUBSTITUTE(A2,strFind,strFlag,LEN(A2)-LEN(SUBSTITUTE(A2,strFind,""))),1))
Text to right of;
LET(strTarget,A2,strFind,"-",strFlag,"¤",RIGHT(strTarget,LEN(strTarget)-FIND(strFlag,SUBSTITUTE(strTarget,strFind,strFlag,LEN(strTarget)-LEN(SUBSTITUTE(strTarget,strFind,""))),1)))
This gives an error if strFind is not in the target. This can be solved by wrapping FIND in an IFERROR. 
LET(strTarget,A2,strFind,"-",strFlag,"¤",IFERROR(FIND(strFlag,SUBSTITUTE(strTarget,strFind,strFlag,LEN(strTarget)-LEN(SUBSTITUTE(strTarget,strFind,""))),1),0))
LET(strTarget,A2,strFind,"-",strFlag,"¤",RIGHT(strTarget,LEN(strTarget)-IFERROR(FIND(strFlag,SUBSTITUTE(strTarget,strFind,strFlag,LEN(strTarget)-LEN(SUBSTITUTE(strTarget,strFind,""))),1),0)))
This will return the existing string if strFind is not found. If this is not desired use the find separately then test for result>0.
This comment was minimized by the moderator on the site
Thank You, great work !! Best Regards Anders
This comment was minimized by the moderator on the site
Thank you for these formulas. Very helpful.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations