Здравствуйте! Случайно обнаружил, что если суммируемый диапазон (БД!E2:L2) в СУММПРОИЗВ() не совпадает с диапазоном умножаемых диапазонов, то выдает #Н/Д. Как это обойти? Заранее благодарствую за помощь.
Здравствуйте! Случайно обнаружил, что если суммируемый диапазон (БД!E2:L2) в СУММПРОИЗВ() не совпадает с диапазоном умножаемых диапазонов, то выдает #Н/Д. Как это обойти? Заранее благодарствую за помощь.nikitan95
У меня 2016 Excel-я нет, поэтому и функции ЕСНД тоже нет, но и без этого скажу, что так работать не будет То, что внутри СУММПРОИЗВ - это массив, в нем мы можем играться со всякими ЕСЛИ. Все равно результатом получится массив. А вот после отработки СУММПРОИЗВ из массива получится одно число (или ошибка). Это функция агрегирования, такая, как СУММ, СЧЁТ, НАИМЕНЬШИЙ, МАКС, ... И если мы дальше к этому ОДНОМУ!!! числу применим обработчик ошибок (в Вашем случае ЕСНД), то это нам ничего не даст. Обработчик ошибок нужно применять до агрегирования значений
У меня 2016 Excel-я нет, поэтому и функции ЕСНД тоже нет, но и без этого скажу, что так работать не будет То, что внутри СУММПРОИЗВ - это массив, в нем мы можем играться со всякими ЕСЛИ. Все равно результатом получится массив. А вот после отработки СУММПРОИЗВ из массива получится одно число (или ошибка). Это функция агрегирования, такая, как СУММ, СЧЁТ, НАИМЕНЬШИЙ, МАКС, ... И если мы дальше к этому ОДНОМУ!!! числу применим обработчик ошибок (в Вашем случае ЕСНД), то это нам ничего не даст. Обработчик ошибок нужно применять до агрегирования значений_Boroda_
_Boroda_, ваша формула работает только с числовыми значениями. В вашем же варианте если в столбце F или G выбрать последнее значение из списка (191010201) то результат выдает нулевой. А у меня в списке еще похуже есть, типа 740206-2508. Как заставить СУММПРОИЗВ() дружить с текстовыми значениями? Я кое как смог, но формулы в столбцах C и D "забунтовали".(
_Boroda_, ваша формула работает только с числовыми значениями. В вашем же варианте если в столбце F или G выбрать последнее значение из списка (191010201) то результат выдает нулевой. А у меня в списке еще похуже есть, типа 740206-2508. Как заставить СУММПРОИЗВ() дружить с текстовыми значениями? Я кое как смог, но формулы в столбцах C и D "забунтовали".(nikitan95
если в столбце F или G выбрать последнее значение из списка (191010201) то результат выдает нулевой
А Вы как хотели? Вы что в формуле попросили написать? И у Вас в формуле в первом файле что написано? Диапазон _ri равен
Код
=БД!$B$2:$B$10
а формула
Код
=СУММПРОИЗВ((E2=_ri)*(H2=_year)*БД!$E$2:$L$9)
Диапазон _ri до строки 10, а даипазон БД!$E$2:$L$9 до строки 9. Я Вас понял так, что Вам зачем-то нужно не считать последнюю строку. Если таки нужно, то просто напишите БД!$E$2:$L$10
если в столбце F или G выбрать последнее значение из списка (191010201) то результат выдает нулевой
А Вы как хотели? Вы что в формуле попросили написать? И у Вас в формуле в первом файле что написано? Диапазон _ri равен
Код
=БД!$B$2:$B$10
а формула
Код
=СУММПРОИЗВ((E2=_ri)*(H2=_year)*БД!$E$2:$L$9)
Диапазон _ri до строки 10, а даипазон БД!$E$2:$L$9 до строки 9. Я Вас понял так, что Вам зачем-то нужно не считать последнюю строку. Если таки нужно, то просто напишите БД!$E$2:$L$10