Страницы: 1
RSS
VBA агрегация данных по столбцу большого объема данных
 
Друзья, привет!

Нужна ваша логическая помощь и экспертиза.
Задача простая, есть 2 файла: Plans и report. В файле Plans указаны планы по определенным кодам в суммах и штуках, в файле report указаны все операции построчно, по столбцам есть все данные Код, Сумма, Штуки. Цель подставить по коду общую сумму продаж и штук.

Первая мысль использовать перебор через строк в первом и втором файле через For, при этом в файле report строк может быть очень много, что приведет к долгой обработке. Возможно есть другой логический способ собрать данные? Может массивом, может есть какая то агрегация, может библиотеку подключить. Поделитесь пожалуйста опытом.

Заранее благодарен.
невозможное делаем сразу, чудо - требует небольшой подготовки.
 
SQL, PowerQuery -  Быстро, выгодно, удобно.
По вопросам из тем форума, личку не читаю.
 
можно и массивом, можно и формулой, можно и вариантами от БМВ
Много как можно.
Можно просто сводной.
 
PQ не подходит - на сервере на котором будет проходит обработка старая версия Excel (Win Serv не тянет версию Excel с PQ)
Сводная вариант, но создавать ее макросом чтобы потом спарсить скорее костыли чем решение.
Поэтому в теме указано VBA. Как сделать обработку массивом не очень представляю, верно понимаю что проходиться по массиву VBA должна быстрее чем по таблице? Можете подсказать как засунуть всю таблицу в массив?
невозможное делаем сразу, чудо - требует небольшой подготовки.
 
Цитата
phelex написал:
старая версия Excel (Win Serv не тянет версию Excel с PQ)
Там что, Windows 2003?
Изменено: БМВ - 09.12.2020 23:22:46
По вопросам из тем форума, личку не читаю.
 
БМВ, windows server 2003 вроде :) Но методы PQ не работают, думаю вы заметили мою активность в области VBA по этой причине.
невозможное делаем сразу, чудо - требует небольшой подготовки.
 
Доброе время суток
Цитата
phelex написал:
Цель подставить по коду общую сумму продаж и штук.
VBA словарь сценариев, несколько элементов на ключ и сумма / количество элементов
 
Цитата
phelex написал:
думаю вы заметили мою активность в области VBA по этой причине.
А должен был бы заметить активность ваших админов в области перехода на ОС, которая хотя б на поддержке :-)

Странно что Андрей VG, не упомянул SQL но внутри VBA. Примитивный запрос, при этом как VBA, там и просто MSQuery, который даже в ооочень старой версии Excel присутсвует.

Оба файла поместить в с:\temp
ну или изменить в запросе путь . Что можно сделать макросом. Обновление запроса также можно макросом запускать.
Изменено: БМВ - 09.12.2020 23:04:01
По вопросам из тем форума, личку не читаю.
 
Андрей VG,  спасибо, это что то что я искал - буду разбираться.

БМВ, да давно заметил, все не так просто :)
Спасибо попробую вернусь с обратной связью.  
невозможное делаем сразу, чудо - требует небольшой подготовки.
 
Друзья, резюмируя тему.
БМВ, интересный способ, но надо теперь еще SQL изучать. Спасибо.
Андрей VG, больше спасибо, но изучение не помогло понять как работать с коллекцией, если понял это как со скрипт.директори, но больше столбцов.

В качестве решения использовал подход загрузки всей таблицы в обычный многомерный массив и работу с ним, прилично загружает, но дальше работает на лету.
невозможное делаем сразу, чудо - требует небольшой подготовки.
Страницы: 1
Наверх