1

Допустим, у меня есть одна ячейка, которая содержит следующий текст:

"Blah blah blah blah blah. Bleh: word word word word." 

Есть ли функция вырезать / вставить все из Bleh: вперед в другую ячейку (основываясь на тексте Bleh не на длине строки)?

Я пробовал ковыряться, гуглить и т.д., Но пока не нашел много. Заранее благодарю за любой совет / помощь.

3 ответа3

5

На самом деле вам нужна функция MID() которая необязательно допускает два аргумента, в результате чего текст возвращается с позиции указанного второго аргумента до конца строки.

К сожалению, функция MID() Excel не позволяет этого. Таким образом, формула замены должна быть разработана.


Предполагая, что текст в A1 , простейшая формула:

=IFERROR(MID(A1,FIND("Bleh:",A1),LEN(A1)),"")


Другой способ создания формулы замещения - использование RIGHT() , как это сделал cybernetic.nomad в этом ответе. Тем не менее, лучший способ сделать это заключается в следующем:

=IFERROR(RIGHT(A1,LEN(A1)+1-FIND("Bleh:",A1)),"")


Хотя технически говоря, вторая формула является более "точной" (она вычисляет и возвращает точно правильное количество крайних правых символов, в отличие от первой формулы, которая пытается получить больше символов, чем фактически существует), первая формула содержит два меньше операторов (да, быстрее!) и короче (нужно сэкономить на этих дорогих байтах жесткого диска /SD;))

1

Предполагая, что ваш текст в A1

=IFERROR(IF(FIND("bleh",A1)>0,RIGHT(A1,LEN(A1)+1 - FIND("bleh",A1)),""),"")
-2

Вы также можете использовать это.

=MID(A2,FIND(".",A2)+2,256)

Вы получаете, Bleh: word word word word

Другой, самая простая альтернатива, команда Text to Column .

  • Выберите с разделителями во время 1-го шага.
  • На шаге 2 выберите « Другое» и поместите знак "Полная остановка" в текстовое поле рядом с ним.
  • Наконец нажмите либо Далее, либо Готово.

Вы получаете, Bleh: word word word word

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .