Страницы: 1
RSS
Оптимизировать формулу подсчёта максимального числа значений в диапазонах
 
Добрый день.
В примере лежит формула, определяющая максимальное число заполненных ячеек в указанных диапазонах. Мне она не нравится, т.к. вычисляется она не на листе формулой, а из кода в событии Worksheet_Change только для той таблицы, где произошли изменения.
Я сделал это 6ю отдельными строчками Application.Count() для 6 диапазонов, результаты записываются в массив, а потом у массива берётся Application.Max(). Cинтаксис  получается длинный и некрасивый.
Может ли кто подсказать, как можно упростить эту формулу? Приемлемы все варианты: формулой (можно исп. летучие ф-ции), можно из кода через Evaluate(), можно через WorksheetFunction(). В книге созданы имена Склад1 ... Склад6, можно привязываться к ним.
 
ANik, это реальная структура данных? или это вы такой "упрощенный" пример сделали, а реальная структура абсолютно другая?
 
описание ваще мутное, формула массива ввести в АХ2 потом скопировать в АХ7 и АХ12
Код
=МАКС(ПРОМЕЖУТОЧНЫЕ.ИТОГИ(2;СМЕЩ(B3;;{0;8;16;24;32;40};4;8)))
Лень двигатель прогресса, доказано!!!
 
Сергей, спасибо, то что надо :-) Крутил-крутил этот СМЕЩ() со всех сторон, но так и не смог заставить его выдать массив значений для каждого диапазона.

 StepanWolkoff,  да, будете удивлены, но это реальная структура данных. Более того, каждая таблица имеет ещё 2 служебные строки, содержащие различные объединённые ячейки, но я их обрезал, поскольку к примеру они дела не имеют.
Страницы: 1
Наверх