Помогите, пожалуйста, (из кубов OLAP, но не принципиально наверно) с помощью сводной таблицы выгрузить несколько (а на деле 100-200) заранее известных позиций с показателем по ним.
Во вложении тестовые данные и список для фильтрации. Сделаем вид, что данные в таблице с оригинальным именем "Data" - это внешнее подключение.
Всем привет и хорошего настроения!
Помогите, пожалуйста, (из кубов OLAP, но не принципиально наверно) с помощью сводной таблицы выгрузить несколько (а на деле 100-200) заранее известных позиций с показателем по ним.
Во вложении тестовые данные и список для фильтрации. Сделаем вид, что данные в таблице с оригинальным именем "Data" - это внешнее подключение.Rioran
Роман, а как ты себе представляешь решение не на VBA? Как ты думаешь, как должен список попасть в фильтр, кроме как руками его вбить? Конечно, если в списке есть какая-то закономерность, то можно применить фильтр (в версиях от 2007 и выше), но думаю что в твоем примере имена подразумеваются случайные...
Роман, а как ты себе представляешь решение не на VBA? Как ты думаешь, как должен список попасть в фильтр, кроме как руками его вбить? Конечно, если в списке есть какая-то закономерность, то можно применить фильтр (в версиях от 2007 и выше), но думаю что в твоем примере имена подразумеваются случайные...Serge_007
Роман, а как ты себе представляешь решение не на VBA?
В моих мечтах я вижу, что можно сделать на уровне сводной таблицы расчётное поле, которое даёт "1" если данное значение находится поискпозом в списке и "0" - если нет. Пока что споткнулся об многомерное выражение в этом направлении и далее не двигался.
Роман, а как ты себе представляешь решение не на VBA?
В моих мечтах я вижу, что можно сделать на уровне сводной таблицы расчётное поле, которое даёт "1" если данное значение находится поискпозом в списке и "0" - если нет. Пока что споткнулся об многомерное выражение в этом направлении и далее не двигался.
В моих мечтах я вижу, что можно сделать на уровне сводной таблицы расчётное поле, которое даёт "1" если данное значение находится поискпозом в списке и "0" - если нет
Да, но как это сделать? Ведь в вычисляемых полях запрещены
В моих мечтах я вижу, что можно сделать на уровне сводной таблицы расчётное поле, которое даёт "1" если данное значение находится поискпозом в списке и "0" - если нет
Да, но как это сделать? Ведь в вычисляемых полях запрещены
1. Включить надстройку powerPivot в 2013 офисе она идёт в комплекте. 2. Добавить нужные таблицы в модель и открыть окно powerPivot 3. Связать таблицы по нужному столбцу 4. Добавить вычисляемое поле к таблице по которому потом будем фильтровать 5.вставить на лист сводную таблицу и поставить нужный фильтр. Все С подключением тоже будет работать. Но обязательно нужно включить надстройку.
1. Включить надстройку powerPivot в 2013 офисе она идёт в комплекте. 2. Добавить нужные таблицы в модель и открыть окно powerPivot 3. Связать таблицы по нужному столбцу 4. Добавить вычисляемое поле к таблице по которому потом будем фильтровать 5.вставить на лист сводную таблицу и поставить нужный фильтр. Все С подключением тоже будет работать. Но обязательно нужно включить надстройку.SLAVICK
Еще добавил простенький макрос для фильтра сводной. [vba]
Код
Sub filtr() Dim m() Dim mA() As String m = Sheets(2).[e2:e6].Value ReDim mA(1 To UBound(m))
For i = 1 To UBound(m) mA(i) = "[Data].[Поле].&[" & m(i, 1) & "]" Next Sheets(2).PivotTables("СводнаяТаблица1").PivotFields("[Data].[Поле].[Поле]").VisibleItemsList = mA End Sub
[/vba] Обратите внимание - макрос для сводных 15.(т.е. 2013-го офиса с участием модели данных) для 14х сводных работать не будет - там через .PivotItems нужно перебирать И еще все элементы фильтра должны иметься в базе, если какого-то не будет - выдаст ошибку.
Пожалуйста.
Еще добавил простенький макрос для фильтра сводной. [vba]
Код
Sub filtr() Dim m() Dim mA() As String m = Sheets(2).[e2:e6].Value ReDim mA(1 To UBound(m))
For i = 1 To UBound(m) mA(i) = "[Data].[Поле].&[" & m(i, 1) & "]" Next Sheets(2).PivotTables("СводнаяТаблица1").PivotFields("[Data].[Поле].[Поле]").VisibleItemsList = mA End Sub
[/vba] Обратите внимание - макрос для сводных 15.(т.е. 2013-го офиса с участием модели данных) для 14х сводных работать не будет - там через .PivotItems нужно перебирать И еще все элементы фильтра должны иметься в базе, если какого-то не будет - выдаст ошибку. SLAVICK
SLAVICK, если верить зарубежным статьям - SlicerCashes для кубов работает быстрее. Именно через них я и решил в итоге свой вопрос, но для общего образования крайне хотел бы уточнить другие детали.
Попробовал решение через связку таблиц. Столкнулся с некоторыми особенностями 2013-го офиса. PowerPivot и PowerView в 13-м офисе соединены воедино. Поэтому начать работу пришлось с "Вставка - Отчёты - PowerView". На открывшемся листе появляется закладка "Power View", в которой можно выбрать "Данные - Связи". Но в связях этих нет возможности выбрать сводную таблицу, подключенную к кубам ОЛАП. Я вижу только список проверяемых позиций.
SLAVICK, если верить зарубежным статьям - SlicerCashes для кубов работает быстрее. Именно через них я и решил в итоге свой вопрос, но для общего образования крайне хотел бы уточнить другие детали.
Попробовал решение через связку таблиц. Столкнулся с некоторыми особенностями 2013-го офиса. PowerPivot и PowerView в 13-м офисе соединены воедино. Поэтому начать работу пришлось с "Вставка - Отчёты - PowerView". На открывшемся листе появляется закладка "Power View", в которой можно выбрать "Данные - Связи". Но в связях этих нет возможности выбрать сводную таблицу, подключенную к кубам ОЛАП. Я вижу только список проверяемых позиций.Rioran
Роман, Москва, voronov_rv@mail.ru Яндекс-Деньги: 41001312674279
Поэтому начать работу пришлось с "Вставка - Отчёты - PowerView".
А зачем включать PowerView до того как добавлены данные в модель? Зачем вообще включать PowerView до того как будет готова сводная? я всегда включаю его после... У powerpivot же есть возможность добавлять данные... Скиньте пример с подключением - посмотрю. Может я чего-то не понимаю
Поэтому начать работу пришлось с "Вставка - Отчёты - PowerView".
А зачем включать PowerView до того как добавлены данные в модель? Зачем вообще включать PowerView до того как будет готова сводная? я всегда включаю его после... У powerpivot же есть возможность добавлять данные... Скиньте пример с подключением - посмотрю. Может я чего-то не понимаю
Здесь видео как подключать куб к powerpivotSLAVICK
Иногда все проще чем кажется с первого взгляда.
Сообщение отредактировал SLAVICK - Четверг, 14.05.2015, 15:04