1

У меня есть данные в следующем формате в Excel:

ABC - DEF - XYZ; GHI, JKL, MNO, PQR, STU, VWX, YYY, ZZZ

Можно ли извлечь данные между вторым дефисом "-" и точкой с запятой ";" - в этом случае XYZ?

Спасибо!

3 ответа3

1

Если вы не хотите использовать надстройку, вы можете использовать следующее:

=TRIM(MID(A1,SEARCH("-",A1,SEARCH("-",A1,1)+1)+1,SEARCH(";",A1,1)-SEARCH("-",A1,SEARCH("-",A1,1)+1)-1))

А1, где у вас есть строка
Поиск найдет второе «-» (вы можете скопировать, вставить его в формулу, если вы не уверены «) и первое«; »
Обрезать, чтобы удалить ненужные места

1

Как насчет:

=TRIM(MID(A1,(FIND("-",A1,(FIND("-",A1)+1))+1),FIND(";",A1,(FIND("-",A1,(FIND("-",A1)+1))+1))-(FIND("-",A1,(FIND("-",A1)+1))+1)))

Например:

0

Я использую бесплатную надстройку регулярных выражений (http://www.codedawn.com/excel-add-ins.php), с помощью которой вы можете легко создать формулу для выбора нужного текста:

=RegExReplace(A1,"(.*-){2}(.*);.*","$2")

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