Уважаемые коллеги, помогите в решении следующей задачи.
1) Если текст содержит слова "отгружен" и "доставлен", то "Заказ отгружен и доставлен". Если текст содержит слово "отгружен", то "Заказ отгружен". Если текст содержит слово "доставлен", то "Заказ доставлен". Моя формула работает неправильно: [vba]
Код
=ЕСЛИ((СУММ(СЧЁТ(A2;"*"&{"отгружен"}&"*");(СУММ(СЧЁТЕСЛИ(A2;"*"&{"доставлен"}&"*")))))>0;"Заказ отгружен и доставлен.";ЕСЛИ(СУММ(СЧЁТЕСЛИ(A2;"*"&{"отгружен"}&"*"))<>СЧЁТЕСЛИ(A2;"*"&{"доставлен"}&"*");"Заказ отгружен.";ЕСЛИ(СУММ(СЧЁТЕСЛИ(A2;"*"&{"доставлен"}&"*"))<>СЧЁТЕСЛИ(A2;"*"&{"отгружен"}&"*");"Заказ доставлен.")))
[/vba]
2) Получить все слова в ячейке, начинающиеся с заглавной буквы (без учёта первого слова и без макроса). В идеале получить фамилии и имена, но думаю, что это нерешаемая задача, учитывая, что ФИО может находится в любой месте текста.
Заранее благодарен за любую помощь!
Уважаемые коллеги, помогите в решении следующей задачи.
1) Если текст содержит слова "отгружен" и "доставлен", то "Заказ отгружен и доставлен". Если текст содержит слово "отгружен", то "Заказ отгружен". Если текст содержит слово "доставлен", то "Заказ доставлен". Моя формула работает неправильно: [vba]
Код
=ЕСЛИ((СУММ(СЧЁТ(A2;"*"&{"отгружен"}&"*");(СУММ(СЧЁТЕСЛИ(A2;"*"&{"доставлен"}&"*")))))>0;"Заказ отгружен и доставлен.";ЕСЛИ(СУММ(СЧЁТЕСЛИ(A2;"*"&{"отгружен"}&"*"))<>СЧЁТЕСЛИ(A2;"*"&{"доставлен"}&"*");"Заказ отгружен.";ЕСЛИ(СУММ(СЧЁТЕСЛИ(A2;"*"&{"доставлен"}&"*"))<>СЧЁТЕСЛИ(A2;"*"&{"отгружен"}&"*");"Заказ доставлен.")))
[/vba]
2) Получить все слова в ячейке, начинающиеся с заглавной буквы (без учёта первого слова и без макроса). В идеале получить фамилии и имена, но думаю, что это нерешаемая задача, учитывая, что ФИО может находится в любой месте текста.
="Заказ "&ЕСЛИ(СЧЁТ(ПОИСК("отгружен";A2));"отгружен";"")&ЕСЛИ(СЧЁТ(ПОИСК("доставлен";A2));ЕСЛИ(СЧЁТ(ПОИСК("отгружен";A2));" и ";"")&"доставлен";"")&"."
Фамилию можно извлекать после слова "менеджер". Всегда ли такая формулировка предложений? *Или так:
Код
="Заказ "&ВЫБОР(СЧЁТ(ПОИСК("отгружен";A2))+СЧЁТ(ПОИСК("доставлен";A2))*2+1;"";"отгружен";"доставлен";"отгружен и доставлен")&"."
**Фамилия: Удалено администрацией - это другой вопрос
Здравствуйте!
Код
="Заказ "&ЕСЛИ(СЧЁТ(ПОИСК("отгружен";A2));"отгружен";"")&ЕСЛИ(СЧЁТ(ПОИСК("доставлен";A2));ЕСЛИ(СЧЁТ(ПОИСК("отгружен";A2));" и ";"")&"доставлен";"")&"."
Фамилию можно извлекать после слова "менеджер". Всегда ли такая формулировка предложений? *Или так:
Код
="Заказ "&ВЫБОР(СЧЁТ(ПОИСК("отгружен";A2))+СЧЁТ(ПОИСК("доставлен";A2))*2+1;"";"отгружен";"доставлен";"отгружен и доставлен")&"."
**Фамилия: Удалено администрацией - это другой вопросСветлый
Программировать проще, чем писать стихи.
Сообщение отредактировал Светлый - Среда, 07.11.2018, 08:45
Фамилию можно извлекать после слова "менеджер". Всегда ли такая формулировка предложений?
- всегде ли "Кузнецов" после "менеджер" и всегда ли "менеджер" перед Кузнецовым"?
По заказам такой вариант (не показывает текст "Заказ ." где не нужно)
Код
=ТЕКСТ(ВПР(СУММПРОИЗВ(СЧЁТЕСЛИ(A2;{"*отгружен*":"*доставлен*"})*{1:2});{0;0:1;"отгружен":2;"доставлен":3;"отгружен и доставлен"};2);";;;""Заказ ""@"".""")
Или без извращений
Код
=ВПР(СУММПРОИЗВ(СЧЁТЕСЛИ(A2;{"*отгружен*":"*доставлен*"})*{1:2});{0;0:1;"Заказ отгружен.":2;"Заказ доставлен.":3;"Заказ отгружен и доставлен."};2)
- Прочитайте Правила форума - п.4 Правил форума: один вопрос - одна тема По поводу фамилии создайте новую. С учетом вопроса
Фамилию можно извлекать после слова "менеджер". Всегда ли такая формулировка предложений?
- всегде ли "Кузнецов" после "менеджер" и всегда ли "менеджер" перед Кузнецовым"?
По заказам такой вариант (не показывает текст "Заказ ." где не нужно)
Код
=ТЕКСТ(ВПР(СУММПРОИЗВ(СЧЁТЕСЛИ(A2;{"*отгружен*":"*доставлен*"})*{1:2});{0;0:1;"отгружен":2;"доставлен":3;"отгружен и доставлен"};2);";;;""Заказ ""@"".""")
Или без извращений
Код
=ВПР(СУММПРОИЗВ(СЧЁТЕСЛИ(A2;{"*отгружен*":"*доставлен*"})*{1:2});{0;0:1;"Заказ отгружен.":2;"Заказ доставлен.":3;"Заказ отгружен и доставлен."};2)