Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.08.2015, 22:32   #1
Евгений Таб
Форумчанин
 
Аватар для Евгений Таб
 
Регистрация: 09.08.2013
Сообщений: 202
По умолчанию Оптимизация или СУММЕСЛИ без формулы

Добрый вечер коллеги.

Подскажите пож-ста инструмент который позволит произвести суммирование по условию, в данном случае формулой СУММЕСЛИ.

Я обычно примелял вставку формулы в ячейку и протягивал до конца таблицы. Но когда я перешел на более крупные таблицы, скорость обработка данные упала.

Пока нашел одно решение ускорения работы, но на самом деле, оно также очень долго суммирует.

Код HTML:
With Range("AH2:AH" & Cells(Rows.Count, 1).End(xlUp).Row)
.FormulaR1C1 = "=SUMIF(YUSD_SHP004!C[-33]:C[-17],RC[-33]&""_""&RC[-32],YUSD_SHP004!C[-17])"
.Value = .Value
End With
 End Sub

Можете написать пример кода который позволит быстрее обрабатывать данные. Спасибо.
Евгений Таб вне форума Ответить с цитированием
Старый 12.08.2015, 23:47   #2
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Может, попробовать оптимизировать формулу?
Код:
=СУММЕСЛИ(YUSD_SHP004!A:Q;A1&"_"&B1;YUSD_SHP004!Q:Q)
Вам действительно нужно искать совпадение во всем диапазоне столбцов A:Q? А Вы в курсе, что диапазоном суммирования в этом случае является диапазон Q:AG?
Цитата:
Аргумент «диапазон_суммирования» не обязательно должен совпадать по размеру и форме с аргументом «диапазон». При определении фактических ячеек, подлежащих суммированию, в качестве начальной ячейки используется верхняя левая ячейка аргумента «диапазон_суммирования», а затем суммируются ячейки, соответствующие по размеру и форме аргументу «диапазон».
Ну и использовать в формуле целые столбцы - нехорошо для быстродействия, ведь это заставляет Excel при расчете каждой формулы определять фактический диапазон. Определите нижнюю границу и вставьте в формулу.
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
ДВОЙНОЕ ЕСЛИ, или СУММЕСЛИ через сцепку нане нужен! Евгений Таб Microsoft Office Excel 2 24.11.2014 13:49
СУММЕСЛИ или chugunski Microsoft Office Excel 1 13.11.2014 23:37
Аналог формулы СУММЕСЛИ на VBA bud-dy Microsoft Office Excel 7 03.02.2014 06:01
Экономия памяти. Что лучше: метод класса или процедура с параметрами... или без разницы? 3D Hunter Общие вопросы Delphi 7 26.12.2011 23:23
Как скрыть формулы без защиты листа radket Microsoft Office Excel 4 21.10.2010 12:06