найти слова в списке слов и проставить перед ними знак +
aleksandr-1205
Дата: Среда, 25.05.2016, 19:17 |
Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 57
Репутация:
0
±
Замечаний:
80% ±
Excel 2010
Здравствуйте! Подскажите, пжл, как можно сделать такую задачу: в столбце А есть список фраз, в столбце B находятся предлоги и союзы. Нужно в столбце C вывести все фразы из столбца А, но чтоб у них перед указанными словами в столбце B стоял знак +. Другими словами мне нужно проставить знак + перед предлогами и союзами в фразах. В столбце B предлоги могут иметь пробел до и после себя.
Здравствуйте! Подскажите, пжл, как можно сделать такую задачу: в столбце А есть список фраз, в столбце B находятся предлоги и союзы. Нужно в столбце C вывести все фразы из столбца А, но чтоб у них перед указанными словами в столбце B стоял знак +. Другими словами мне нужно проставить знак + перед предлогами и союзами в фразах. В столбце B предлоги могут иметь пробел до и после себя. aleksandr-1205
Ответить
Сообщение Здравствуйте! Подскажите, пжл, как можно сделать такую задачу: в столбце А есть список фраз, в столбце B находятся предлоги и союзы. Нужно в столбце C вывести все фразы из столбца А, но чтоб у них перед указанными словами в столбце B стоял знак +. Другими словами мне нужно проставить знак + перед предлогами и союзами в фразах. В столбце B предлоги могут иметь пробел до и после себя. Автор - aleksandr-1205 Дата добавления - 25.05.2016 в 19:17
gling
Дата: Среда, 25.05.2016, 19:37 |
Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2524
Репутация:
678
±
Замечаний:
0% ±
2010
Здравствуйте. Изобрел формулу массива. Но если несколько предлогов в тексте результат будет не правильный.Код
=ЛЕВСИМВ(A2;СУММ(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0)))&"+"&ПСТР(A2;СУММ(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0));99)
если написать Код
=ЛЕВСИМВ(A2;МАКС(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0)))&"+"&ПСТР(A2;МАКС(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0));99)
то будет + проставлять только перед одним последним предлогом в предложении;Код
=ЛЕВСИМВ(A2;МИН(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);9^9)))&"+"&ПСТР(A2;МИН(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);9^9));99)
перед первым
Здравствуйте. Изобрел формулу массива. Но если несколько предлогов в тексте результат будет не правильный.Код
=ЛЕВСИМВ(A2;СУММ(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0)))&"+"&ПСТР(A2;СУММ(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0));99)
если написать Код
=ЛЕВСИМВ(A2;МАКС(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0)))&"+"&ПСТР(A2;МАКС(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0));99)
то будет + проставлять только перед одним последним предлогом в предложении;Код
=ЛЕВСИМВ(A2;МИН(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);9^9)))&"+"&ПСТР(A2;МИН(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);9^9));99)
перед первым gling
ЯД-41001506838083
Сообщение отредактировал gling - Среда, 25.05.2016, 21:45
Ответить
Сообщение Здравствуйте. Изобрел формулу массива. Но если несколько предлогов в тексте результат будет не правильный.Код
=ЛЕВСИМВ(A2;СУММ(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0)))&"+"&ПСТР(A2;СУММ(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0));99)
если написать Код
=ЛЕВСИМВ(A2;МАКС(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0)))&"+"&ПСТР(A2;МАКС(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);0));99)
то будет + проставлять только перед одним последним предлогом в предложении;Код
=ЛЕВСИМВ(A2;МИН(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);9^9)))&"+"&ПСТР(A2;МИН(ЕСЛИОШИБКА(ПОИСК($B$2:$B$8;A2;1);9^9));99)
перед первым Автор - gling Дата добавления - 25.05.2016 в 19:37
aleksandr-1205
Дата: Среда, 25.05.2016, 19:43 |
Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 57
Репутация:
0
±
Замечаний:
80% ±
Excel 2010
к сожалению, часто бывает, что несколько предлогов есть во фразе, например: "взять кредит под низкий процент в москве"
к сожалению, часто бывает, что несколько предлогов есть во фразе, например: "взять кредит под низкий процент в москве" aleksandr-1205
Ответить
Сообщение к сожалению, часто бывает, что несколько предлогов есть во фразе, например: "взять кредит под низкий процент в москве" Автор - aleksandr-1205 Дата добавления - 25.05.2016 в 19:43
Светлый
Дата: Среда, 25.05.2016, 21:38 |
Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
Вот монстра создал. Два предлога плюсует. Не оптимизировал. Формула массива:Код
=ИНДЕКС(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));));" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));));" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));));" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));))
Вот монстра создал. Два предлога плюсует. Не оптимизировал. Формула массива:Код
=ИНДЕКС(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));));" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));));" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));));" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));))
Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Вот монстра создал. Два предлога плюсует. Не оптимизировал. Формула массива:Код
=ИНДЕКС(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));));" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));));" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));));" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));))
Автор - Светлый Дата добавления - 25.05.2016 в 21:38
aleksandr-1205
Дата: Среда, 25.05.2016, 21:46 |
Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 57
Репутация:
0
±
Замечаний:
80% ±
Excel 2010
почему то пишет #Н/Д
Ответить
Сообщение почему то пишет #Н/Д Автор - aleksandr-1205 Дата добавления - 25.05.2016 в 21:46
Светлый
Дата: Среда, 25.05.2016, 21:52 |
Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
Формула массива (Ctrl+Shift+Enter) Если образцы сделать без пробелов, формула покороче:Код
=ИНДЕКС(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" "));));" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" "));));" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" "));));" "&B$2:B$9&" ";" +"&B$2:B$9&" "));))
Формула массива (Ctrl+Shift+Enter) Если образцы сделать без пробелов, формула покороче:Код
=ИНДЕКС(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" "));));" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" "));));" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" "));));" "&B$2:B$9&" ";" +"&B$2:B$9&" "));))
Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Формула массива (Ctrl+Shift+Enter) Если образцы сделать без пробелов, формула покороче:Код
=ИНДЕКС(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" "));));" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" "));));" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(ИНДЕКС(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&B$2:B$9&" ";" +"&B$2:B$9&" "));));" "&B$2:B$9&" ";" +"&B$2:B$9&" "));))
Автор - Светлый Дата добавления - 25.05.2016 в 21:52
aleksandr-1205
Дата: Среда, 25.05.2016, 21:55 |
Сообщение № 7
Группа: Пользователи
Ранг: Участник
Сообщений: 57
Репутация:
0
±
Замечаний:
80% ±
Excel 2010
в образцах предлоги могут быть как с пробелами так и без, как с пробелом с одной стороны, так и с двух..
в образцах предлоги могут быть как с пробелами так и без, как с пробелом с одной стороны, так и с двух.. aleksandr-1205
Ответить
Сообщение в образцах предлоги могут быть как с пробелами так и без, как с пробелом с одной стороны, так и с двух.. Автор - aleksandr-1205 Дата добавления - 25.05.2016 в 21:55
Manyasha
Дата: Среда, 25.05.2016, 22:06 |
Сообщение № 8
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация:
898
±
Замечаний:
0% ±
Excel 2010, 2016
Предлагаю маленькую udf-ку [vba]Код
Function добавить_плюс(cell As Range, rng As Range) Dim res$ res = cell.Value For Each r In rng.Cells res = Replace(res, " " & Trim(r.Value) & " ", " +" & Trim(r.Value) & " ") Next r добавить_плюс = res End Function
[/vba]
Предлагаю маленькую udf-ку [vba]Код
Function добавить_плюс(cell As Range, rng As Range) Dim res$ res = cell.Value For Each r In rng.Cells res = Replace(res, " " & Trim(r.Value) & " ", " +" & Trim(r.Value) & " ") Next r добавить_плюс = res End Function
[/vba] Manyasha
ЯД: 410013299366744 WM: R193491431804
Ответить
Сообщение Предлагаю маленькую udf-ку [vba]Код
Function добавить_плюс(cell As Range, rng As Range) Dim res$ res = cell.Value For Each r In rng.Cells res = Replace(res, " " & Trim(r.Value) & " ", " +" & Trim(r.Value) & " ") Next r добавить_плюс = res End Function
[/vba] Автор - Manyasha Дата добавления - 25.05.2016 в 22:06
aleksandr-1205
Дата: Среда, 25.05.2016, 22:11 |
Сообщение № 9
Группа: Пользователи
Ранг: Участник
Сообщений: 57
Репутация:
0
±
Замечаний:
80% ±
Excel 2010
Предлагаю маленькую udf-ку
почему то не перед всеми предлогами ставит +, например предлог "в" [moder]Я последний раз поправляю за Вами пост. В следующий раз за нарушение Правил форума получите последнее замечание![/moder]
Предлагаю маленькую udf-ку
почему то не перед всеми предлогами ставит +, например предлог "в" [moder]Я последний раз поправляю за Вами пост. В следующий раз за нарушение Правил форума получите последнее замечание![/moder]aleksandr-1205
Сообщение отредактировал Manyasha - Среда, 25.05.2016, 22:16
Ответить
Сообщение Предлагаю маленькую udf-ку
почему то не перед всеми предлогами ставит +, например предлог "в" [moder]Я последний раз поправляю за Вами пост. В следующий раз за нарушение Правил форума получите последнее замечание![/moder]Автор - aleksandr-1205 Дата добавления - 25.05.2016 в 22:11
Светлый
Дата: Среда, 25.05.2016, 22:11 |
Сообщение № 10
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
Тогда оставить СЖПРОБЕЛЫ Базовая формула (один +):Код
ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));))
Если все A2 заменить на эту же формулу, будет плюсовать два предлога (как в первом моём ответе). Если заменить ещё раз, на три предлога будет работать.
Тогда оставить СЖПРОБЕЛЫ Базовая формула (один +):Код
ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));))
Если все A2 заменить на эту же формулу, будет плюсовать два предлога (как в первом моём ответе). Если заменить ещё раз, на три предлога будет работать. Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Тогда оставить СЖПРОБЕЛЫ Базовая формула (один +):Код
ИНДЕКС(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ");ПОИСКПОЗ(МАКС(ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" ")));ДЛСТР(ПОДСТАВИТЬ(A2;" "&СЖПРОБЕЛЫ(B$2:B$10)&" ";" +"&СЖПРОБЕЛЫ(B$2:B$10)&" "));))
Если все A2 заменить на эту же формулу, будет плюсовать два предлога (как в первом моём ответе). Если заменить ещё раз, на три предлога будет работать. Автор - Светлый Дата добавления - 25.05.2016 в 22:11
Manyasha
Дата: Среда, 25.05.2016, 22:30 |
Сообщение № 11
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация:
898
±
Замечаний:
0% ±
Excel 2010, 2016
Поправила пост выше, файл перевложила.
Поправила пост выше, файл перевложила. Manyasha
ЯД: 410013299366744 WM: R193491431804
Ответить
Сообщение Поправила пост выше, файл перевложила. Автор - Manyasha Дата добавления - 25.05.2016 в 22:30
aleksandr-1205
Дата: Среда, 25.05.2016, 22:41 |
Сообщение № 12
Группа: Пользователи
Ранг: Участник
Сообщений: 57
Репутация:
0
±
Замечаний:
80% ±
Excel 2010
Поправила пост выше, файл перевложила.
подскажите, пжл, а можно сделать так, чтоб проставлять знак + перед словами, указанными в столбце B (там не будет пробелов ни до слова ни после слова), но при этом в исходной фразе предлоги могут быть как вначале (в каком банке купить) так и в конце (купить банке каком в )
Поправила пост выше, файл перевложила.
подскажите, пжл, а можно сделать так, чтоб проставлять знак + перед словами, указанными в столбце B (там не будет пробелов ни до слова ни после слова), но при этом в исходной фразе предлоги могут быть как вначале (в каком банке купить) так и в конце (купить банке каком в )aleksandr-1205
Сообщение отредактировал aleksandr-1205 - Среда, 25.05.2016, 22:44
Ответить
Сообщение Поправила пост выше, файл перевложила.
подскажите, пжл, а можно сделать так, чтоб проставлять знак + перед словами, указанными в столбце B (там не будет пробелов ни до слова ни после слова), но при этом в исходной фразе предлоги могут быть как вначале (в каком банке купить) так и в конце (купить банке каком в )Автор - aleksandr-1205 Дата добавления - 25.05.2016 в 22:41
Manyasha
Дата: Среда, 25.05.2016, 22:55 |
Сообщение № 13
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация:
898
±
Замечаний:
0% ±
Excel 2010, 2016
aleksandr-1205 , тогда так [vba]Код
Function добавить_плюс(cell As Range, rng As Range) Dim res$ res = " " & cell.Value & " " For Each r In rng.Cells res = Replace(res, " " & Trim(r.Value) & " ", " +" & Trim(r.Value) & " ") Next r добавить_плюс = Trim(res) End Function
[/vba]
aleksandr-1205 , тогда так [vba]Код
Function добавить_плюс(cell As Range, rng As Range) Dim res$ res = " " & cell.Value & " " For Each r In rng.Cells res = Replace(res, " " & Trim(r.Value) & " ", " +" & Trim(r.Value) & " ") Next r добавить_плюс = Trim(res) End Function
[/vba]Manyasha
ЯД: 410013299366744 WM: R193491431804
Ответить
Сообщение aleksandr-1205 , тогда так [vba]Код
Function добавить_плюс(cell As Range, rng As Range) Dim res$ res = " " & cell.Value & " " For Each r In rng.Cells res = Replace(res, " " & Trim(r.Value) & " ", " +" & Trim(r.Value) & " ") Next r добавить_плюс = Trim(res) End Function
[/vba]Автор - Manyasha Дата добавления - 25.05.2016 в 22:55
aleksandr-1205
Дата: Среда, 25.05.2016, 23:08 |
Сообщение № 14
Группа: Пользователи
Ранг: Участник
Сообщений: 57
Репутация:
0
±
Замечаний:
80% ±
Excel 2010
aleksandr-1205, тогда так
спасибо работает! а можно еще сделать, чтоб диапазон из столбца В автоматически брался исходя из того сколько там предлогов написано? а то приходится вручную постоянно корректировать диапазон В в формуле при каждом изменении слов в столбике В ..
aleksandr-1205, тогда так
спасибо работает! а можно еще сделать, чтоб диапазон из столбца В автоматически брался исходя из того сколько там предлогов написано? а то приходится вручную постоянно корректировать диапазон В в формуле при каждом изменении слов в столбике В ..aleksandr-1205
Сообщение отредактировал aleksandr-1205 - Среда, 25.05.2016, 23:30
Ответить
Сообщение aleksandr-1205, тогда так
спасибо работает! а можно еще сделать, чтоб диапазон из столбца В автоматически брался исходя из того сколько там предлогов написано? а то приходится вручную постоянно корректировать диапазон В в формуле при каждом изменении слов в столбике В ..Автор - aleksandr-1205 Дата добавления - 25.05.2016 в 23:08