Нужно, чтобы при изменении в срезе или upadte pivot1(sheet1)- после этого обновилась и pivot на sheet2, потому как она построенна на базе pivot1(sheet1). Кроме этого есть еще один попутный вопросик, как задать диапазон для сводной таблицы типа A2:M? - Дело в том что сводная на базе сводной не всегда источник то есть поля находятся на первой строчке тогда можно задать A:M, а вот если со второй то A2:M не дает выставить.
Нужно, чтобы при изменении в срезе или upadte pivot1(sheet1)- после этого обновилась и pivot на sheet2, потому как она построенна на базе pivot1(sheet1). Кроме этого есть еще один попутный вопросик, как задать диапазон для сводной таблицы типа A2:M? - Дело в том что сводная на базе сводной не всегда источник то есть поля находятся на первой строчке тогда можно задать A:M, а вот если со второй то A2:M не дает выставить.skais675
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable) Application.enableevents = False 'MsgBox "refresh" On Error Resume Next Sheets("Sheet2").PivotTables("PivotTable2").PivotCache.Refresh Application.enableevents = True End Sub
[/vba]А ошибку давало по тому, что PivotTable1 на том листе нет. Правильнее именовать и использовать имя которое вы дали, или [vba]
Код
Sheets("Sheet2").PivotTables(1)
[/vba] естесвенно, номер должен соответвовать индеку таблицы на листе. .
[vba]
Код
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable) Application.enableevents = False 'MsgBox "refresh" On Error Resume Next Sheets("Sheet2").PivotTables("PivotTable2").PivotCache.Refresh Application.enableevents = True End Sub
[/vba]А ошибку давало по тому, что PivotTable1 на том листе нет. Правильнее именовать и использовать имя которое вы дали, или [vba]
Код
Sheets("Sheet2").PivotTables(1)
[/vba] естесвенно, номер должен соответвовать индеку таблицы на листе. .bmv98rus
Замечательный Временно просто медведь , процентов на 20.
Сообщение отредактировал bmv98rus - Вторник, 14.02.2017, 22:55
Кроме этого есть еще один попутный вопросик, как задать диапазон для сводной таблицы типа A2:M? - Дело в том что сводная на базе сводной не всегда источник то есть поля находятся на первой строчке тогда можно задать A:M, а вот если со второй то A2:M не дает выставить.
Класс! Это моя невнимательность. А на второй вопросик можете ответить?
Кроме этого есть еще один попутный вопросик, как задать диапазон для сводной таблицы типа A2:M? - Дело в том что сводная на базе сводной не всегда источник то есть поля находятся на первой строчке тогда можно задать A:M, а вот если со второй то A2:M не дает выставить.
Правила форума: Один вопрос - одна тема. Только вы уверены что вам нужна последовательность сводных? Такое бывает, но часто все строится одной.
Правила форума: Один вопрос - одна тема. Только вы уверены что вам нужна последовательность сводных? Такое бывает, но часто все строится одной.bmv98rus
Замечательный Временно просто медведь , процентов на 20.
Сообщение отредактировал bmv98rus - Вторник, 14.02.2017, 23:10
Вот Вам пример, для чего мне это нужно: Есть данные - исходные. Далее таблица 1 в обычном представлении Далее таблица 2 в промежуточном представлении Далее таблица 3 то что нужно получить Суть заключается в том, чтобы отображать количество уникальных артикулов на протяжении выбранного периода. В обычной таблице она просто просуммирует и все. А сводная по сводной решает этот вопрос. Не забывайте обновить сводную 3 после изменений в срезе.
Вот Вам пример, для чего мне это нужно: Есть данные - исходные. Далее таблица 1 в обычном представлении Далее таблица 2 в промежуточном представлении Далее таблица 3 то что нужно получить Суть заключается в том, чтобы отображать количество уникальных артикулов на протяжении выбранного периода. В обычной таблице она просто просуммирует и все. А сводная по сводной решает этот вопрос. Не забывайте обновить сводную 3 после изменений в срезе.skais675
skais675, Надеюсь можераторы не удалят но просто давайте закроем эту тему, раз вы не желаетеделать другую. Если не Power, то как вариант, именованая область. Для вашего примера
Код
=OFFSET(Sheet1!$J$9;;;COUNTA(Sheet1!$J:$J)-1;3)
или подобное и в качестве источника следущей PivotTable - эта область. Если в скрипты углубится, то можно определить область исходной сводной, при обновлении данных и её прописать в источник следующей, но не пробовал и есть опасение что сбросятся измерения, хотя и не должны.
skais675, Надеюсь можераторы не удалят но просто давайте закроем эту тему, раз вы не желаетеделать другую. Если не Power, то как вариант, именованая область. Для вашего примера
Код
=OFFSET(Sheet1!$J$9;;;COUNTA(Sheet1!$J:$J)-1;3)
или подобное и в качестве источника следущей PivotTable - эта область. Если в скрипты углубится, то можно определить область исходной сводной, при обновлении данных и её прописать в источник следующей, но не пробовал и есть опасение что сбросятся измерения, хотя и не должны.bmv98rus
Замечательный Временно просто медведь , процентов на 20.
Сообщение отредактировал bmv98rus - Среда, 15.02.2017, 17:57
bmv98rus - Важно не только получить результат, но и чтобы функционал со срезами был работоспособен, то есть при выборе любых периодов или настроек таблица по определенным полям всегда показывала уникальные записи а не агрегировала их. Сводная по сводной решает вопрос - правда громоздко получается исх данных более 400 000 строк (в развернутом виде).
anvg Наверняка Вы правы , но у всех пользователей стоит 2010 и они работают с таблицами меня свой выбор срезами, я не могу обязать корпоративную компанию в пару тыс человек обязать перейти на другой продукт.
bmv98rus - Важно не только получить результат, но и чтобы функционал со срезами был работоспособен, то есть при выборе любых периодов или настроек таблица по определенным полям всегда показывала уникальные записи а не агрегировала их. Сводная по сводной решает вопрос - правда громоздко получается исх данных более 400 000 строк (в развернутом виде).
anvg Наверняка Вы правы , но у всех пользователей стоит 2010 и они работают с таблицами меня свой выбор срезами, я не могу обязать корпоративную компанию в пару тыс человек обязать перейти на другой продукт.skais675
skais675, Вы спрашивали как источником для Pivot сделать область другой pivote, которая не с первой строки, я вам рассказал один из вариантов. см вайл с вашим примером
skais675, Вы спрашивали как источником для Pivot сделать область другой pivote, которая не с первой строки, я вам рассказал один из вариантов. см вайл с вашим примеромbmv98rus
Даже любопытства не вызвало? Это новый "движок" расчётов - сводные остаются теми же, срезы никуда не деваются. Но не настаиваю. Я помню - пусть безобразно, зато единообразно. Успехов.
Даже любопытства не вызвало? Это новый "движок" расчётов - сводные остаются теми же, срезы никуда не деваются. Но не настаиваю. Я помню - пусть безобразно, зато единообразно. Успехов.anvg
Важно не только получить результат, но и чтобы функционал со срезами был работоспособен
- этого в Вашем примере не наблюдается! Однако все равно Вам благодарен, так как Вы своим примером натолкнули на еще один путь решения - ипользуя MQ можно через VBA передать в запрос параметры фильтрации из срезов, и тогда действительно понадобится всего одна результирующая сводная.
Важно не только получить результат, но и чтобы функционал со срезами был работоспособен
- этого в Вашем примере не наблюдается! Однако все равно Вам благодарен, так как Вы своим примером натолкнули на еще один путь решения - ипользуя MQ можно через VBA передать в запрос параметры фильтрации из срезов, и тогда действительно понадобится всего одна результирующая сводная.skais675
Vlad skype: skais675 email: skais675@mail.ru
Сообщение отредактировал skais675 - Четверг, 16.02.2017, 09:32