Формула Excel для извлечения текста с несколькими закрытыми скобками в конце строки - PullRequest
0 голосов
/ 16 апреля 2020

У меня есть ячейка в Excel, которая будет иметь различный текст, иногда у нее будет одна закрытая скобка в конце текста, иногда у нее будет две. Также могут быть открытые и закрытые скобки в тексте. Мне нужна формула для извлечения текста между первыми открытыми скобками и последними закрытыми скобками. До сих пор я пробовал:

=MID(C6,FIND("(",C6)+1,FIND(")",C6))

Эта формула по-прежнему оставляет закрытые скобки в конце, когда текст имеет одну закрытую скобку, и оставляет обе закрытые скобки, когда текст имеет две закрытые скобки в конец. Для текста с открытыми и закрытыми скобками посередине результат обрезает часть текста после первой закрытой скобки. Я также пробовал эту формулу:

=MID(LEFT(C6,FIND(")",C6)-1),FIND("(",C6)+1,LEN(C6))

Эта формула отлично работает, если текст имеет только одну закрытую скобку в конце. Однако, если в конце есть две закрытые скобки, он удаляет обе, и мне нужно только удалить одну. Если я уберу -1 в формуле, это не удалит закрытые скобки в сценарии с одной закрытой скобкой. Кроме того, если в тексте есть открытые и закрытые скобки, он обрезает текст после первой закрытой скобки.

Ответы [ 2 ]

0 голосов
/ 16 апреля 2020

Если последний ")" всегда находится в последней позиции

Эта более короткая формула может вернуть тот же результат

В B1, скопированный вниз:

=MID(A1,FIND("(",A1)+1,LEN(A1)-FIND("(",A1)-1)

enter image description here

И,

Если последний ")" не всегда находится в последней позиции

Тогда,

В B1, формула скопирована:

=MID(A1,FIND("(",A1)+1,LOOKUP(99,FIND(")",A1,ROW($1:$99)))-FIND("(",A1)-1)

enter image description here

0 голосов
/ 16 апреля 2020

насколько я могу судить, используйте это:

=MID(LEFT(A1,FIND("}}}",SUBSTITUTE(A1,")","}}}",LEN(A1)-LEN(SUBSTITUTE(A1,")",""))))-1),FIND("(",A1)+1,LEN(A1))

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...