2014-02-10 2 views
2

У меня есть список ячеек, выглядит более или менее, как это:символов Извлечение после некоторых других символов Excel

  • АРБ: dp1-4-12
  • ANT: dp1-12-1
  • D: dp1-1-1
  • ONN: dp4-2-12

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

ARB d 1 

Я хочу все символы перед «:», затем первым символом после «:», а первый число (или ОДИН символ перед первым «-»).

Я играл с TRIM, LEFT/RIGHT и FIND - но не могу понять, как получить только ОДИН символ после/до определенного символа. Это то, что я пробовал, но не знаю, как ограничить вывод только один символ:

TRIM(LEFT(E5;FIND(":";E5)-1)) 

Заранее спасибо за любые указатели или советы :-)

Update, получил это работает:

Я закончил использовать этот код, который был изменен после предложения смеха.

=TRIM(LEFT(E2;FIND(":";E2)-1)) & RIGHT(MID(E2;FIND(":";E2);2);1) & RIGHT(MID(E2;FIND("p.";E2);3);1) 

Это дало мне следующий вывод: ARBd1

Теперь мне просто нужно добавить разделители и им все хорошо идти. Спасибо за помощь.

+0

Функция 'MID' должна помочь вам: [link] (http://office.microsoft.com/ru-ru/excel-help/HA102838074.aspx) –

+0

Это типичное приложение регулярных выражений в качестве инструмента поиска. Не знаю, поддерживают ли приложения с расширенными листами. Возможно, есть расширение. – arkascha

ответ

4

Найти первую часть: =LEFT(E5,FIND(":",E5)-1)

Найти вторую часть: =MID(E5,FIND(":",E5)+1,1)

= MID (текст, START_NUM, num_chars)

так что здесь мы начинаем с символа после «: »путем добавления 1 к FIND

и с 1 символ, в конце

Найти последний параграф т: =MID(E5,FIND("-",E5)-1,1)

делает подобную вещь ко второй части, но теперь, начиная с символа перед «-» путем вычитания 1 из которых мы нашли его, и снова принимать только 1 символ

Чтобы объединить их все вместе, просто использовать конкатенации символ "&" и пространство:

=LEFT(E5,FIND(":",E5)-1)&" "&MID(E5,FIND(":",E5)+1,1) & " " & MID(E5,FIND("-",E5)-1,1)

отредактирован заменить запятые с полу двоеточием (для разных культур):

=LEFT(E5;FIND(":";E5)-1)&" "&MID(E5;FIND(":";E5)+1;1) & " " & MID(E5;FIND("-";E5)-1;1) 
+0

Привет, это не работает. Первая часть в порядке, вторая часть и третья часть дают мне ошибку «Youve ввели слишком мало аргументов для этой функции». Итак, я переработал эту часть: = MID (E5; FIND (":"; E5); 2) .... Это дает мне ": d", что нормально, но не идеально. Есть предположения? – SAH

+0

mmm извините, отлично работает для меня с британскими настройками excel, похоже, что вам нужны полуколоны вместо запятых. Попробуйте это = MID (E5; FIND («:»; E5) +1; 1) –

+0

Я исправил его самостоятельно, путем настройки кода, с которым вы мне помогли! :-) В итоге я использовал: = TRIM (LEFT (E2; FIND (":"; E2) -1)) & RIGHT (MID (E2; FIND (":"; E2); 2); 1) ПРАВЫЙ (MID (Е2; FIND ("р."; E2); 3); 1). Thats много кода excel: F Спасибо, чувак! – SAH

Смежные вопросы