11

Ячейка A1 говорит 0001 Джон Смит Ячейка A2 говорит 0002 Билл Снайдер

Я хочу в основном разделить это, поэтому один столбец просто показывает числа (0001, 0002 и т.д.), А затем другой столбец просто показывает имя.

Первая часть проста. Используя функцию "= LEFT(A1; 4)", я могу получить 0001. Как я могу получить имя? Например, использование «RIGHT (A1; 99)» приведет к захвату всей строки "0001 John Smith". Поскольку каждое имя отличается по длине, я не уверен, что делать. Могу ли я как-то сказать, чтобы он захватил всю строку, КРОМЕ первых 4 символов? Или как-то сказать, чтобы он взял последние 2 слова вместо количества символов, как он спрашивает?

1 ответ1

12

Чтобы получить подстроку, исключая первые 4 символа (плюс пробел), вы можете использовать функцию MID :

MID(A1,6,LEN(A1))

Это приведет к тому, что «John Smith Cell A2 говорит 0002 Билл Снайдер». Вы также можете имитировать разбиение текста с помощью функции FIND , например, эта формула выведет «0001»:

LEFT(A1,FIND(" ",A1)-1)

Далее, это выведет Джона (при условии, что исходный текст находится в ячейке A1, а предыдущая формула в B1):

MID(A1,LEN(B1)+2,FIND(" ",A1,LEN(B1)))

Вот:

  • А1 - оригинальный текст
  • LEN(B1)+2 - начальная позиция (длина кода 0001 + разделитель + 1)
  • НАЙТИ ("", А1, LEN (B1)) - конечная позиция (т.е. следующий пробел)

И вы можете уточнить это дальше, чтобы получить последние 2 слова :)

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