Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Замена формулы ступенчатого вычисления значений на макрос, Оптимизация скорости вычисления
 

Здравствуйте.

Для начала попробуйте удалить верхний уровень "ЕСЛИ" в "стоимость объединённая", оставьте только ту часть, которая выполняется если "ЛОЖЬ". Установленная проверка ничего не дает, функция ВПР не вернет пустую строку (""), она вернет числовое значение (как вариант 0) или выдаст ошибку (если не найдет ничего подходящего).

Если ВПР вернет ноль - значит в таблице с ценами есть объем/вес для которого не указана цена.

Да и устанавливать в ячейке значение "" ... я бы не стал.

Кроме того если Вы планируете оставлять столбцы "вес1" и "объем1" в таблице, тогда в "стоимость объединённая" стоит использовать ссылки на эти столбцы, а не повторно вычислять те же данные (СУММЕСЛИМН).

Так же обратите внимание на нулевые значения в объемах и весе. Подсчитывая количество записей через СЧЁТЕСЛИМН Вы рискуете исказить результат, эти записи будут посчитаны. Возможно стоит добавить еще одно условие - "<>0".

Код
=МАКС(ЕСЛИ(СУММЕСЛИМН([Объем];[МаршрутныйЛистДата];[@МаршрутныйЛистДата];[ВариантРасчета];[@ВариантРасчета];[тблАдрес];[@тблАдрес])<>"";ВПР(СУММЕСЛИМН([Объем];[МаршрутныйЛистДата];[@МаршрутныйЛистДата];[ВариантРасчета];[@ВариантРасчета];[тблАдрес];[@тблАдрес]);Лист1!$D$3:$E$18;2;1));ЕСЛИ([@Вес]<>"";ВПР(СУММЕСЛИМН([Вес];[МаршрутныйЛистДата];[@МаршрутныйЛистДата];[ВариантРасчета];[@ВариантРасчета];[тблАдрес];[@тблАдрес]);Лист1!$A$3:$B$18;2;1)))
Посчитать количество ячеек удовлетворяющих условию, Таких тем много, но не могу найти описание моего конкретного условия
 
как-то так
Посчитать количество ячеек удовлетворяющих условию, Таких тем много, но не могу найти описание моего конкретного условия
 
А как определить, что в срок, а что просрочено?
Вопрос снят - недосмотрел.
Изменено: miskaM - 03.11.2017 12:07:54
Формулой проставить единицу (метку) напротив последней имеющейся даты (невыходной день)
 
Первый вариант. Поигрался с формулами массива, до этого не доводилось с ними работать - интересная штука.
Второй вариант. С помощью сводной таблицы.

Файлы удалены: превышение допустимого размера вложения [МОДЕРАТОР]
задача вывести формулу которая выводит (на другом листе) только уникальные значения
 
А сводные таблицы?
Экономят уйму времени.
Работаю экономистом на крупном металлургическом предприятии - массивы данных часто переваливают за 10 тысяч строк, эта штука здорово экономит время.
Не работает цикл For-next
 
Добавил немного комментариев в код
Код
stazprozent = 10 'ставим равно 10
        If stazprozent > 0 Then 'убеждаемся, что 10>0  УСЛОВИЕ ELSE НИКОГДА НЕ БУДЕТ ВЫПОЛНЕНО
            For i = LastRow1 - 3 To 0 Step -1 'цикл работает в диапазоне от 7-3=4 до 0, ну да 6 элемент массива мы не заполняли
                If stazprozent > Arr2(i) Then 'проверяем i-тый элемент массива <10, такой элемент один - Arr2(0)=5
                    MsgBox i 'соответственно выводим i=0
                    MsgBox Arr2(i) 'соответственно выводим Arr2(0)=5
Васчет суммы в списке по каждому наименованию отдельно
 
Или с помощью сводной таблицы
Удаление несуществующих связей
 
Мне в свое время удалось решить эту проблему через Ctrl+F. В строке поиска задавал фрагмент имени файла, на который идет ссылка. Область поиска формулы. Только, в связи с размером файла, реализовывал все через VBA.
Не учитывать последний день месяца в столбце при делении плана по дням, если это первое число нового месяца
 
Тоже вроде неплохо получилось.
Страницы: 1
Наверх