Новости:

К первому сообщению темы должен быть прикреплен файл примера в формате xls*.
Приложив пример, Вы избавите себя и других от вопросов типа "А какой критерий?", "А куда выводить результат?", "А сколько строк?" и все тех же просьб выложить файл. Рисовать за Вас Ваши же таблички с заданиями, а затем и решение к ним, никто желанием не горит. Да и, как показывает практика, в большинстве случаев без файла решения не найти.

Главное меню

Написание макроса по заданным листам и диапазону ячеек

Автор Olgochka, 10.07.2013, 23:31

« назад - далее »

Olgochka

Здравствуйте, уважаемые специалисты Excel,
Хочу попросить у вас совета, так как уже не знаю какой вариант придумать.
У меня есть основной файл в Excel 2007, выгрузка данных по компании нарастающим итогом, т.е с января по конец июня.
Данные выгружаются из рабочей программы и файл очень объемный (106 Мб).
Также у меня созданы шаблоны с формулами, куда подтягиваются все значения.
Проблема состоит в том, что при открытии любого файла с формулами, excel начинает умирать медленно и верно. Зависает надолго.
Файлы  с формулами являются своего рода промежуточными-шаблонными файлами, тк из скалькулированных формул я копирую их значениями в основной файл, в котором помимо России другие страны и который не должен быть ничем утяжелен.

Формула по сути остается неизменной (sumifs), просто меняются статьи затрат.Файлы все идентичны,но в каждом из них разное кол-во листов.
Дайте, пожалуйста,советы и подсказки, как лучше прописать макрос, чтобы не мучиться каждый раз.

Спасибо.

Poltava

#1
Большой обьем формул и файлов с данными НЕИЗБЕЖНО будет вызывать тормоза особенно при пересчете! для начала попробуйте просто поотключать все ненужное что именно можно поотключать попробуйте почитать тут Ускоряем работу VBA в Excel и тут Несколько советов по работе с VBA в Excel Если Вы задались вопросом причем тут VBA ведь Вы о нем неупоминали то я отвечаю, VBA позволяет отключить обновление экрана, ненужную реакцию на события и прочее что замдляет работу это раз, во вторых предполагаю что значительно ускорить работу сможет только переход на VBA и отказ от формул!
Не пытайтесь спорить с дебилом. Иначе вы опуститесь до его уровня. Где он задавит вас своим опытом.

Шпец Докапыч

Если файл имеет правильную структуру: шапка + данные, то проще воспользоваться сводной таблицей:
Вставка → Сводная таблица → Использовать внешний источник данных → [Выбрать подключение...] → [Найти другие...] → Тип файлов: Файлы Excel → <Выбрать файл> → [Открыть] → <Выбрать таблицу> → [ОК] → [ОК]

Список полей сводной таблицы:

  • Названия строк - столбец с Датой
  • ∑ Значения - то, что у вас является диапазоном суммирования в СУММЕСЛИ()
Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли

Olgochka

Спасибо за подсказку про ускорение работы,тк это действительно очень актуально.
А про сводную таблицу не очень поняла для чего она,так как эти данные по статьям затрат потом суммируются по разным областям и рассчитаются по курсу евро.Мне из пивотки потом данные будет сложнее достать.

Шпец Докапыч

Альтернативный вариант: использовать ADO.
Примерчик: TEST_ADO.rar

Цитата: Olgochka от 11.07.2013, 00:05
Мне из пивотки потом данные будет сложнее достать.
Что вам в ней мешает?
Знания недостаточно, необходимо применение. Желания недостаточно, необходимо действие. (с) Брюс Ли