Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Выбор значения из выпадающего списка сводной таблицы - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Выбор значения из выпадающего списка сводной таблицы (Макросы/Sub)
Выбор значения из выпадающего списка сводной таблицы
Паштет Дата: Пятница, 06.11.2020, 09:24 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 123
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Есть сводная таблица, которая подтягивает значения, по выбранному одному условию - месяцу в виде числа. Написал макрос, который должен переключать этот месяц в зависимости от выбранного в форме. Но если после добавления в основную таблицу добавились данные по новому месяцу, то этот новый месяц упорно не хочет выводит, и кричит об ошибке. Когда вручную поменяешь месяц, то все после этого работает. К примеру: сейчас надо впервые сделать отчет за октябрь, данные в основную таблицу вбиты, но в сводной еще не запрашивались и там стоит сентябрь. Запускаю макрос, и он выдает ошибку. Переключил на октябрь в ручную в сводной таблице и макрос теперь спокойно выводит и октябрь, и сентябрь, и если снова запрошу октябрь, то выведет его. Где я мог ошибиться:
[vba]
Код
With Sheets("1")
        .Cells(7, 2) = mes.ListIndex + 1
        .Cells(7, 2) = CStr(.Cells(7, 2))
Dim mec As String
mec = .Cells(7, 2)
End With
Sheets("Круг исправный месяц").Activate
ActiveWorkbook.RefreshAll
ActiveSheet.PivotTables("СводнаяТаблица16").PivotFields("Месяц").CurrentPage = mec
[/vba]
P.S. Файл с примером выложить не могу, уж больно объемный он.
 
Ответить
СообщениеЕсть сводная таблица, которая подтягивает значения, по выбранному одному условию - месяцу в виде числа. Написал макрос, который должен переключать этот месяц в зависимости от выбранного в форме. Но если после добавления в основную таблицу добавились данные по новому месяцу, то этот новый месяц упорно не хочет выводит, и кричит об ошибке. Когда вручную поменяешь месяц, то все после этого работает. К примеру: сейчас надо впервые сделать отчет за октябрь, данные в основную таблицу вбиты, но в сводной еще не запрашивались и там стоит сентябрь. Запускаю макрос, и он выдает ошибку. Переключил на октябрь в ручную в сводной таблице и макрос теперь спокойно выводит и октябрь, и сентябрь, и если снова запрошу октябрь, то выведет его. Где я мог ошибиться:
[vba]
Код
With Sheets("1")
        .Cells(7, 2) = mes.ListIndex + 1
        .Cells(7, 2) = CStr(.Cells(7, 2))
Dim mec As String
mec = .Cells(7, 2)
End With
Sheets("Круг исправный месяц").Activate
ActiveWorkbook.RefreshAll
ActiveSheet.PivotTables("СводнаяТаблица16").PivotFields("Месяц").CurrentPage = mec
[/vba]
P.S. Файл с примером выложить не могу, уж больно объемный он.

Автор - Паштет
Дата добавления - 06.11.2020 в 09:24
NikitaDvorets Дата: Пятница, 06.11.2020, 13:51 | Сообщение № 2
Группа: Пользователи
Ранг: Новичок
Сообщений: 46
Репутация: 8 ±
Замечаний: 0% ±

Excel 2019
Возможно, макрос и не нужен. Достаточно в конструкторе сводной таблицы добавить фильтр по столбцу с номерами месяцев.
Далее можно уже настраивать фильтр по нужному месяцу/месяцам.
 
Ответить
СообщениеВозможно, макрос и не нужен. Достаточно в конструкторе сводной таблицы добавить фильтр по столбцу с номерами месяцев.
Далее можно уже настраивать фильтр по нужному месяцу/месяцам.

Автор - NikitaDvorets
Дата добавления - 06.11.2020 в 13:51
Паштет Дата: Пятница, 06.11.2020, 14:07 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 123
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
У меня очень большой проект по обработке статистики, который потом формируется в презентацию, управление идет через форму, поэтому хочется, чтобы нажал одну кнопку, чуточку подождал и забрал конечный продукт :)
 
Ответить
СообщениеУ меня очень большой проект по обработке статистики, который потом формируется в презентацию, управление идет через форму, поэтому хочется, чтобы нажал одну кнопку, чуточку подождал и забрал конечный продукт :)

Автор - Паштет
Дата добавления - 06.11.2020 в 14:07
NikitaDvorets Дата: Пятница, 06.11.2020, 19:23 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 46
Репутация: 8 ±
Замечаний: 0% ±

Excel 2019
Тогда, действительно, нужен макрос, на основе, например:
https://access-excel.tips/multiple-criteria-in-label-filter-pivot-table/
если знакомы с английским.
 
Ответить
СообщениеТогда, действительно, нужен макрос, на основе, например:
https://access-excel.tips/multiple-criteria-in-label-filter-pivot-table/
если знакомы с английским.

Автор - NikitaDvorets
Дата добавления - 06.11.2020 в 19:23
CaramelManiac Дата: Пятница, 06.11.2020, 22:48 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 52
Репутация: 16 ±
Замечаний: 0% ±

MS Excel 2003-2019
Здравствуйте.
Сводная сама не обновляется. После добавления новых данных, сводную таблицу нужно обновить.
[vba]
Код
ActiveSheet.PivotTables("СводнаяТаблица16").PivotCache.Refresh
[/vba]


Сообщение отредактировал CaramelManiac - Пятница, 06.11.2020, 22:53
 
Ответить
СообщениеЗдравствуйте.
Сводная сама не обновляется. После добавления новых данных, сводную таблицу нужно обновить.
[vba]
Код
ActiveSheet.PivotTables("СводнаяТаблица16").PivotCache.Refresh
[/vba]

Автор - CaramelManiac
Дата добавления - 06.11.2020 в 22:48
Паштет Дата: Вторник, 10.11.2020, 12:56 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 123
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Спасибо. Вроде работает.
Я правда думал, что ActiveWorkbook.RefreshAll достаточно.
 
Ответить
СообщениеСпасибо. Вроде работает.
Я правда думал, что ActiveWorkbook.RefreshAll достаточно.

Автор - Паштет
Дата добавления - 10.11.2020 в 12:56
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Выбор значения из выпадающего списка сводной таблицы (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

jooble Яндекс цитирования
© 2010-2020 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!