0 / 0 / 0
Регистрация: 29.06.2017
Сообщений: 9
|
||||||
1 | ||||||
Суммеслимн в VBA, аналог сводной таблицы26.09.2017, 14:26. Показов 4909. Ответов 7
Метки нет Все метки)
(
Добрый день!
Есть лист с данными в виде таблицы. По ключевым столбцам нужно сформировать подобие сводной. Попытался использовать следующий код. Во вложении то, что получилось, а также лист с тем, что хотелось бы иметь в конечном итоге.
0
|
|
26.09.2017, 14:26 | |
Ответы с готовыми решениями:
7
Доступ к значениям сводной таблицы через VBA Создание сводной таблицы из массива более 65536 строк на VBA Фильтры сводной таблицы Формирование сводной таблицы |
0 / 0 / 0
Регистрация: 29.06.2017
Сообщений: 9
|
|
26.09.2017, 14:29 [ТС] | 2 |
Прилагаю файл.
0
|
6919 / 2829 / 543
Регистрация: 19.10.2012
Сообщений: 8,644
|
|||||||||||
27.09.2017, 10:01 | 3 | ||||||||||
1. строки 11, 13, 14 и 15 лишние, без них будет быстрее с тем же результатом.
2. Позиции ключей и итемов не регламентируются, т.е. всё что ниже 20-й строки потенциально ненадёжно. Ну а подробнее смотреть сейчас некогда... Добавлено через 8 часов 18 минут Чуть попаразитировал... Даты извините не все, только те что есть. Лень с этим возиться.
Правда в строках 45 и 46 часто делается лишняя работа, можно придумать как её не делать. Например сперва отдельным циклом заполнить эту "шапку", и затем более на это не отвлекаться. Ну и строку 47 вероятно лучше написать так:
0
|
0 / 0 / 0
Регистрация: 29.06.2017
Сообщений: 9
|
|
27.09.2017, 13:04 [ТС] | 4 |
Hugo121, спасибо большое!!!
Буду сейчас изучать
0
|
0 / 0 / 0
Регистрация: 29.06.2017
Сообщений: 9
|
|
05.12.2017, 15:23 [ТС] | 5 |
Hugo121, все-таки без вашей помощи не смогу доделать задуманное.
Во вложении файл, с той формой, к которой в конечном счете нужно привести данные (вкладка "Вывод (как должно быть)").
0
|
6919 / 2829 / 543
Регистрация: 19.10.2012
Сообщений: 8,644
|
||||||
05.12.2017, 20:56 | 6 | |||||
Скорректировал под конкретный файл:
0
|
0 / 0 / 0
Регистрация: 29.06.2017
Сообщений: 9
|
|
06.12.2017, 18:57 [ТС] | 7 |
Hugo121, спасибо большое!!!
Что касается рамочек, задумка была следующая - каждой рамке (области) соответствет только один Тип с его уникальными Видами. Сами рамки (области) располагаются друг под другом с разрывом в 1-3 строки. Был бы очень признателен, если б подсказали как это реализовать. Пока у меня удалось вы тянуть в каждую рамку только все уникальные Виды сразу (а хотелось бы только те уникальные, что соответствуют своему Типу). Надеюсь не очень запутал))
0
|
6919 / 2829 / 543
Регистрация: 19.10.2012
Сообщений: 8,644
|
||||||
06.12.2017, 20:08 | 8 | |||||
Тогда почему там в первой рамке разные типы?
Тогда можно в код добавить ещё один словарь типов, где каждому типу собирать коллекцию его видов. В финале цикл по этому словарю, в нём цикл по каждой коллекции - собираем начало ключа, идём циклом по датам - добавляем в ключ - если в словаре oDict есть значение, кладём в ячейку. Когда переходим к следующему ключу словаря типов - можно натянуть рамку по данным предыдущего ключа, отступить на пару тройку строк ниже. Делать геморно, сейчас недосуг. Попробуйте сами - я вроде всё подробно описал. Пример словаря с коллекциями (но тут в коллекцию собирается всё, без отбора уникальных) (и заодно словарь в словаре):
0
|
06.12.2017, 20:08 | |
Помогаю со студенческими работами здесь
8
Обработка сводной таблицы Обновление сводной таблицы Создание динамической сводной таблицы Удаление сводной таблицы макросом Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |