|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
28.08.2010, 19:02 | #21 |
Форумчанин
Регистрация: 04.08.2009
Сообщений: 112
|
Да, но к PowerPivot вы подключаетесь с помощью OLEDB:
Код:
Код:
KL [MVP - Microsoft Office Excel]
CPU: Intel Core 2, 2.17GHz | RAM: 3.25GB (4GB) | GPU: nVidia Quadro FX 2500M OS: Windows 7 Ultimate x64 EN | MSO: 2010 Professional Plus x86 EN |
28.08.2010, 19:09 | #22 |
Участник клуба
Регистрация: 28.06.2009
Сообщений: 1,950
|
Насколько я понял, ваш пример выводит в Msgbox все значения для строк с уровнем вложенности, большим чем у текущей ячейки. При этом выводятся и значения для элементов, которые не относятся к текущему, как Child'ы. Да, пока было достаточно быстро, но выводились значения для всех строк, которые даже не являются вложенными в текущую ячейку (может, так вы и задумывали), ну и выводятся не коды, а сами значения. Впрочем, это не так важно, при необходимости можно разобраться. В принципе, можно сравнить и с моим примером по скорости.
|
28.08.2010, 19:11 | #23 | |
Участник клуба
Регистрация: 28.06.2009
Сообщений: 1,950
|
Цитата:
Последний раз редактировалось motorway; 28.08.2010 в 19:13. |
|
28.08.2010, 19:19 | #24 | |
Форумчанин
Регистрация: 04.08.2009
Сообщений: 112
|
Цитата:
Насчет "выводятся и значения для элементов, которые не относятся к текущему", мы наверное опять работаем с разными таблицами. Я писал код для картинки в первом посте (см.вложение), а универсальность надо еще дорабатывать.
KL [MVP - Microsoft Office Excel]
CPU: Intel Core 2, 2.17GHz | RAM: 3.25GB (4GB) | GPU: nVidia Quadro FX 2500M OS: Windows 7 Ultimate x64 EN | MSO: 2010 Professional Plus x86 EN |
|
28.08.2010, 19:27 | #25 | |
Форумчанин
Регистрация: 04.08.2009
Сообщений: 112
|
Цитата:
Вот тут есть кое-что про ADO: http://www.erlandsendata.no/english/...php?t=envbadac http://office.microsoft.com/en-au/ac...006252688.aspx
KL [MVP - Microsoft Office Excel]
CPU: Intel Core 2, 2.17GHz | RAM: 3.25GB (4GB) | GPU: nVidia Quadro FX 2500M OS: Windows 7 Ultimate x64 EN | MSO: 2010 Professional Plus x86 EN |
|
28.08.2010, 19:34 | #26 |
Участник клуба
Регистрация: 28.06.2009
Сообщений: 1,950
|
В вашем новом примере для ячейки J22 выводятся почему-то еще и данные, уже относящиеся к России, хотя Бразилия и Россия находятся на одинаковых уровнях вложенности, так что в сумму слагаемые из России не должны входить.
Мне главное было понять принцип, как можно быстро получать эти значения. Остальную работу, конечно, придется делать самому, но вот принципиально узнать, какой способ нужно использовать, чтобы хотя бы при миллионе строк эти значения не доставались очень долго. То, что вы предлагаете, это, видимо, запросы с помощью SQL? Понятно, что с помощью них достать нужные данные реально, но смысл использования PowerPivot состоит в ускорении этих запросов. Может, как раз в случае если надо достать именно большое количество данных, надо использовать SQL (хотя почему?)? По крайней мере, суммарное значение продаж, например, появляется очень быстро - значит ли это, что миллион чисел складывается быстро, а вот если надо достать их ID, то это уже долго по каким-то причинам получается? |
28.08.2010, 19:42 | #27 |
Участник клуба
Регистрация: 28.06.2009
Сообщений: 1,950
|
Да, и еще проблема в том, что если свернуть группу значений, то это все уже не работает. А если бы можно было обращаться к объекту, в котором все эти значения содержатся, такого бы не было
|
30.08.2010, 20:01 | #28 |
Участник клуба
Регистрация: 28.06.2009
Сообщений: 1,950
|
А есть ли способ программно поместить в группу строк в PivotTable нужное поле из таблицы полей? Если это пробовать записать макрорекордером, ничего не появляется. Только запрос писать свой?
|
30.08.2010, 22:14 | #29 | |
Форумчанин
Регистрация: 04.08.2009
Сообщений: 112
|
Цитата:
Код:
KL [MVP - Microsoft Office Excel]
CPU: Intel Core 2, 2.17GHz | RAM: 3.25GB (4GB) | GPU: nVidia Quadro FX 2500M OS: Windows 7 Ultimate x64 EN | MSO: 2010 Professional Plus x86 EN |
|
30.08.2010, 23:12 | #30 |
Участник клуба
Регистрация: 28.06.2009
Сообщений: 1,950
|
Спасибо за помощь. А можно аналогично удалить заданное поле из той же области?
Последний раз редактировалось motorway; 30.08.2010 в 23:19. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Много дочерних форм... | L.A.M.E.R. | Общие вопросы Delphi | 4 | 03.08.2010 08:13 |
запретить переопределение в дочерних классах | MAcK | Общие вопросы Delphi | 2 | 20.05.2010 09:29 |
массив в PivotTable | jungo | Microsoft Office Excel | 1 | 21.01.2010 09:33 |
Расположение дочерних MDI окон слева-направо и сверху-вниз | Umdis | Общие вопросы Delphi | 2 | 30.11.2009 07:05 |
AlphaSkins. Как убрать скин с дочерних MDI Форм? | chandrasecar | Компоненты Delphi | 4 | 11.02.2009 20:06 |