Извлечение конкретного текста из строки с помощью функций - PullRequest
0 голосов
/ 20 июня 2019

У меня были эти строки, у которых нет определенных шаблонов:

- ControlF Job Name: WEB_GG_WPP_PRD_C_C_ELASTICOWL Status: Ended Not Ok  Odate: 04/20/2019 Run Count: 2

- ControlF: WEB_WP_UPP_PRD_C_C_ELASTICOWL  Ended Not Ok  Odate: 4/21  RunCount: 2

-  ControlF: WEB_PP_BPP_PRD_C_D_ELASTICWEEKLY  Status: Ended not OK   Odate: 4/29   Run count: 1

- CONTROLF:   Job Name: WEB_PP_EDM_PRD_T_C_HP1_CTGGDALTA Status: Ended NOT OK Odate: 6/26/2017 RunCount: 2

- CONTROLF:   Job Name: WEB_EZ_APP_PRD_C_D_3RDPANTYUPAC Status: Ended NOT OK Odate: 6/16/2016 RunCount: 1

Мне нужно извлечь эти WEB_* строки (например, WEB_GG_WPP_PRD_C_C_ELASTICOWL) из них с помощью Excel.Я попытался использовать Text-to-Columns, но нужная мне строка помещается по всему листу.Поэтому мои вопросы будут:

  1. Если я использую текст в столбцы, как я могу вытянуть только строку WEB_*?
  2. Как это будет, если я просто буду использоватьформулы?
  3. Каким будет код для этого с использованием VBA?

Спасибо!

РЕДАКТИРОВАТЬ: В приложении снимок экрана для дополнительных примеров

1 Ответ

2 голосов
/ 20 июня 2019

Это должно сделать работу для вас:

Функция: =MID(D6,FIND("WEB",D6,1),FIND("Status",D6,1)-FIND("WEB",D6,1))

  • Обновленная функция для использования

  • MID(D6,FIND("WEB",D6,1),FIND(" ",D6,FIND("WEB",D6,1))-FIND("WEB",D6,1))

enter image description here


Вы можете запустить ту же функцию на Range в VBA, чтобы получить этот результат вLoop.

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