Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.07.2013, 10:07   #1
Hoochara
Пользователь
 
Регистрация: 02.08.2011
Сообщений: 42
По умолчанию Excel / PowerPoint / VBA - данные сводной таблицы

Форумчане, добрый день!
Написал макрос, который из файла Excel собирает диаграммы, путем изменения данных в сводной таблице, в презентацию powerpoint.
Вот в чем проблема: В непонятный для меня момент происходит сохранение данных сводной таблицы, то-есть, я запускаю макрос, делаю презентацию и если после этого удалить абсолютно все листы из книги и обновить данные сводной таблицы, макрос продолжает перебирать данные в сводке, как будто они в ней остались. Как я понимаю происходит сохранение данных в "мозгах" сводки. Я нашел только одно решение проблемы - перестроение сводной таблицы. Может быть кто-то сталкивался с данной проблемой? Помогите пожалуйста.

P.S. - файл выкладывать не буду, так как настроен только для моего ПК.
Возможно есть какое-то свойство сводной таблицы, либо что-то ещё....

Спасибо!
Hoochara вне форума Ответить с цитированием
Старый 10.07.2013, 12:30   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

могу предположить, что сводная обновляется только в ручном режиме
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 10.07.2013, 13:19   #3
Hoochara
Пользователь
 
Регистрация: 02.08.2011
Сообщений: 42
По умолчанию

Да, тоже не нашел иного объяснения.
Если сводная таблица привязана к таблице, решение для себя нашел вот какое:
Имя таблицы Table_Sell_out
Код:

With Лист1.PivotTables("abc")
.PivotSelect "", xlDataAndLabel
.ChangePivotCache ThisWorkbook.PivotCaches. _
Create(SourceType:=xlDatabase, SourceData:="Table_Sell_out", Version:= _
xlPivotTableVersion14)
End With

А, если к диапазону, то:

With ActiveSheet.PivotTables("abc")
.PivotSelect "", xlDataAndLabel
.ChangePivotCache ActiveWorkbook.PivotCaches. _
Create(SourceType:=xlDatabase, SourceData:= _
"C:\Новая папка\[Книга.xlsb]Database!A1:J10", Version:= _
xlPivotTableVersion14)
End With
Данные в сводке отлично обновляются, и сама сводка не едет.
Надеюсь, кому-нибудь будет полезно
Hoochara вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
создание сводной таблицы средствами VBA Red Warrior Microsoft Office Excel 1 24.06.2013 21:16
Сортировка значений сводной таблицы в VBA Hoochara Microsoft Office Excel 1 09.11.2012 15:34
Как собрать данные с нескольких листов без использования сводной таблицы dummy12 Microsoft Office Excel 0 20.09.2012 13:41
Данные из Excel в PowerPoint Mikel23 Microsoft Office Excel 1 29.03.2011 10:56
Данные из двух полей исх. таблицы в одно поле сводной таблицы Strelec79 Microsoft Office Excel 2 02.08.2009 13:59