Добрый день! Часто приходится использовать формулы, которые ссылаются на ячейки сводных таблиц. Проблема в том, что после обновления файла не ясно, все ли верно, поскольку таблицы могут поменять размер (например, добавится строка нового товара) и формулы съедут. Можно ли каким-то образом быстро проверить, что после обновления названия строк и столбцов в сводной таблице не изменились (не появились новые и ничего не исчезло)? Или, например, быстро проверить размер таблицы (т.е. была таблица 5Х10 - 5 столбцов и 10 строк, и после обновления так и осталась 5Х10)?
Добрый день! Часто приходится использовать формулы, которые ссылаются на ячейки сводных таблиц. Проблема в том, что после обновления файла не ясно, все ли верно, поскольку таблицы могут поменять размер (например, добавится строка нового товара) и формулы съедут. Можно ли каким-то образом быстро проверить, что после обновления названия строк и столбцов в сводной таблице не изменились (не появились новые и ничего не исчезло)? Или, например, быстро проверить размер таблицы (т.е. была таблица 5Х10 - 5 столбцов и 10 строк, и после обновления так и осталась 5Х10)?ex
Nic70y, я имею ввиду, что в сводной таблице могут произойти изменения, не предусмотренные фильтрами. Например, неожиданно продадут "товар В", который не продавали полгода. А формула - это просто ссылка, например, на итог. В приведенном примере после появления товара В формула уже будет ссылаться не на итог, а на продажи товара В.
Nic70y, я имею ввиду, что в сводной таблице могут произойти изменения, не предусмотренные фильтрами. Например, неожиданно продадут "товар В", который не продавали полгода. А формула - это просто ссылка, например, на итог. В приведенном примере после появления товара В формула уже будет ссылаться не на итог, а на продажи товара В.ex
Nic70y, к сожалению, сводные таблицы приложить не могу, потому что они без подключения к кубам работать не будут и это коммерческая тайна. Да, можно использовать ВПР, просто когда таблиц много, то и ВПРов много и все это становится трудночитаемо, гораздо удобнее просто сделать ссылку на ячейку. Я думал, что можно как-то быстро проверить, изменились ли сводные после обновления.
Nic70y, к сожалению, сводные таблицы приложить не могу, потому что они без подключения к кубам работать не будут и это коммерческая тайна. Да, можно использовать ВПР, просто когда таблиц много, то и ВПРов много и все это становится трудночитаемо, гораздо удобнее просто сделать ссылку на ячейку. Я думал, что можно как-то быстро проверить, изменились ли сводные после обновления.ex
bmv98rus, похоже, что я никак не могу понять что-то очень простое.) Ну сделаю я Вам пример, похожий на реальный. Он будет такой же, как и тот, что я прислал, только там в столбцах будет 12 месяцев, а в строках 50 товаров. Что принципиально изменится? А функция "получить данные сводной таблицы" тоже неудобна поскольку, как я уже писал, сводные получают данные из кубов, и формула выглядит примерно так: ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ("[Measures].[cmF_SHOP_PLAN-QTY]";$CU$10;"[PARENT_FIRST_HALF_PAY_DATE].[Year]";"[PARENT_FIRST_HALF_PAY_DATE].[Year].&[2019]") Когда в ячейке собираются данные, например, из 5 сводных, то начинает рябить в глазах. Я использую эти функции (получить данные сводной таблицы и впр), но мой вопрос был о том, можно ли как-то быстро проверить, изменились ли сводные после обновления. Чтобы не писать длинных формул.
bmv98rus, похоже, что я никак не могу понять что-то очень простое.) Ну сделаю я Вам пример, похожий на реальный. Он будет такой же, как и тот, что я прислал, только там в столбцах будет 12 месяцев, а в строках 50 товаров. Что принципиально изменится? А функция "получить данные сводной таблицы" тоже неудобна поскольку, как я уже писал, сводные получают данные из кубов, и формула выглядит примерно так: ПОЛУЧИТЬ.ДАННЫЕ.СВОДНОЙ.ТАБЛИЦЫ("[Measures].[cmF_SHOP_PLAN-QTY]";$CU$10;"[PARENT_FIRST_HALF_PAY_DATE].[Year]";"[PARENT_FIRST_HALF_PAY_DATE].[Year].&[2019]") Когда в ячейке собираются данные, например, из 5 сводных, то начинает рябить в глазах. Я использую эти функции (получить данные сводной таблицы и впр), но мой вопрос был о том, можно ли как-то быстро проверить, изменились ли сводные после обновления. Чтобы не писать длинных формул.ex
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable) u = Application.Match("Общий итог", Range("d:d"), 0) v = Application.Match("яя", Range("3:3"), 1) If u * v <> [d1] Then MsgBox "Типа Обновилась!" [d1] = u * v End If End Sub
[/vba]
[vba]
Код
Private Sub Worksheet_PivotTableUpdate(ByVal Target As PivotTable) u = Application.Match("Общий итог", Range("d:d"), 0) v = Application.Match("яя", Range("3:3"), 1) If u * v <> [d1] Then MsgBox "Типа Обновилась!" [d1] = u * v End If End Sub
ex, Тоесть речь не об автоматизации, а просто о поднятом флажке? Тогда достаточно просто посмотреть разницу по количеству заголовков, которое зафиксировано из расчета того что использовано в формулах и с тем что в сводной. Но надо понимать как считать. Например последнюю строку и столбец, количество ..., Если есть итоги, то по ним...., а это все зависит от формата сводной, классического вида или нет, повторения меток,или группировки, вложенности мер. Результат выводится в качестве предупреждения в ячейке.
ex, Тоесть речь не об автоматизации, а просто о поднятом флажке? Тогда достаточно просто посмотреть разницу по количеству заголовков, которое зафиксировано из расчета того что использовано в формулах и с тем что в сводной. Но надо понимать как считать. Например последнюю строку и столбец, количество ..., Если есть итоги, то по ним...., а это все зависит от формата сводной, классического вида или нет, повторения меток,или группировки, вложенности мер. Результат выводится в качестве предупреждения в ячейке.bmv98rus
Замечательный Временно просто медведь , процентов на 20.
Сообщение отредактировал bmv98rus - Среда, 12.06.2019, 08:12