СцепитьЕсли
Данная функция является частью надстройки MulTEx
![]() |
Объединение текстовых данных в одной ячейке на основе критерия
Функция сцепляет в одну строку(ячейку) только ячейки, которые отвечают какому-либо критерию.
Например, необходимо собрать в одну ячейку через запятую фамилии всех сотрудников одного отдела, даже если все сотрудники идут вразнобой:
И из этой таблицы надо получить что-то вроде такой:
Или есть список проектов и этапы по каждому проекту. Для каждого этапа одна строка и необходимо для каждого проекта записать в одну ячейку через запятую все этапы.
Стандартными функциями такие вещи сделать весьма проблематично, т.к. заранее неизвестно сколько будет этих оценок или этапов. Да даже если известно - не так просто это сделать. Через функцию СЦЕПИТЬ
Функции СцепитьЕсли поможет сделать это в разы быстрее и проще. По принципу работы функция очень похожа на стандартную СУММЕСЛИ
Плюс можно добавить к сравнению более чем 50 доп.условий.
Вызов команды через стандартный диалог:
Мастер функций-Категория "MulTEx"- СцепитьЕсли
Вызов с панели MulTEx:
Сумма/Поиск/Функции - Текстовые - СцепитьЕсли
Синтаксис:
=СцепитьЕсли(
=СцепитьЕсли(
=СцепитьЕсли(
=СцепитьЕсли(
Так же данный аргумент может принимать в качестве критерия символы сравнения(
">0" - будут объединены все ячейки в столбце сцепления, значения ячеек критериев для которых больше нуля;">=2" - будут объединены все ячейки в столбце сцепления, значения ячеек критериев для которых больше или равно двум;"<0" - будут объединены все ячейки в столбце сцепления, значения ячеек критериев для которых меньше нуля;"<=60" - будут объединены все ячейки в столбце сцепления, значения ячеек критериев для которых меньше или равно 60;"<>0" - будут объединены все ячейки в столбце сцепления, значения ячеек критериев для которых не равно нулю;"<>" - будут объединены все ячейки в столбце сцепления, значения ячеек критериев для которых не пустые;
Вместо нуля может быть любое число или текст. Так же можно добавить ссылку на ячейку со значением:
Например, если необходимо отобрать и записать через точку-с-запятой и пробел(; ) только тех сотрудников, чей год рождения 1984 и выше(при условии, что год рождения записан в диапазоне $C$2:$C$38), то функцию можно записать так:
Условия использования те же, что и для критериев Диапазон и Критерий. Т.е. допускается использование подстановочных символов и операторов сравнения.
Допускается указывать до 125 связок Диапазон-Критерий(т.е. всего 250 аргументов - до 125 Диапазонов и до 125 относящихся к ним Критериев). Все условия объединены между собой по принципу совпадения И. Если хоть одно условие связки ДиапазонКритерий не выполняется, условия расположенные далее по списку не проверяются, общее условие по строке считается как несоответствующее и данные этой строки не будут сцеплены.
Например, если необходимо отобрать только тех сотрудников, которые работают в плановом отделе и чей год рождения 1984 и выше(при условии, что год рождения записан в диапазоне
Расскажи друзьям, если статья оказалась полезной:

Комментарии, не имеющие отношения к комментируемой статье, могут быть удалены без уведомления и объяснения причин. Если есть вопрос по личной проблеме - добро пожаловать на Форум
При вводе этой формулы выдает #знач, подскажите в чем может быть проблема устал воевать
=СцепитьЕсли('Formen RAPORT'!J7:J49;("mid coat");'Formen RAPORT'!H7:I7;".";ЛОЖЬ;".")
Айдар, зачем скобки в условии? И что за "." последним аргументом? Что Вы хотели этой точкой сказать формуле? После ЛОЖЬ идет связка аргументов ДиапазонКритерий, которые указываются обязательно попарно и только в порядке: диапазон -критерий. Т.е. нечто вроде:'Formen RAPORT'!I7:I49;"condition" , где 'Formen RAPORT'!I7:I49 - диапазон где просматривать доп.значение для поиска, а "condition" - значение, которое надо в этом диапазоне найти.