Ячейка фильтра извлечения Excel - PullRequest
0 голосов
/ 29 апреля 2019

Я хочу иметь возможность получать только нужные данные из ячейки
Например, вот ячейка A1:

+1.5 (-175) (o/u 8.5) (+118)

Я хотел бы получить значение в последней скобкепоэтому новое значение должно быть +118

Ответы [ 3 ]

2 голосов
/ 29 апреля 2019

это найдет последнюю группу () и вернет то, что находится между ними, независимо от расположения в строке или числа пар ():

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

![enter image description here

1 голос
/ 29 апреля 2019

Если в скобках всегда есть 3 набора значений, эта формула извлечет значение из 3-го набора.

=MID(A1,FIND("(",A1,FIND("(",A1,FIND("(",A1,1)+1)+1)+1,LEN(A1)-FIND("(",A1,FIND("(",A1,FIND("(",A1,1)+1)+1)-1)
1 голос
/ 29 апреля 2019

Вы можете создать пользовательскую функцию, например, так:

Public Function GetLastNumber(C As Range)
    Data = Split(C.Text, "(")
    GetLastNumber = Replace(Data(UBound(Data)), ")", "")
End Function

Затем в B1 вы можете набрать =GetLastNumber(A1), чтобы получить +118

Если вы не знакомы с созданиемпользовательская функция, посмотрите этот ответ: Как извлечь серию чисел вместе с одной буквой, за которой следует другая серия цифр? , на которой есть несколько иллюстраций, иллюстрирующих это.

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