'функция обновления сводной таблицы
Sub Refresh()
Dim nName As Name
Dim x As PivotCache
'http://www.planetaexcel.ru/forum/?PAGE_NAME=read&FID=8&TID=34084
For Each nName In ThisWorkbook.Names
If nName.Name Like "Svod" Then nName.Delete 'удаляем имя для диапазона сводной (прошлое)
Next nName
'создаём новое имя с тем же названием для нового диапазона
Sheets("Data").Range("A5").CurrentRegion.Name = "Svod"
'Лист на котором сводная
ThisWorkbook.Sheets("REPORT").Activate
For Each x In Application.ActiveWorkbook.PivotCaches
x.MissingItemsLimit = xlMissingItemsNone
x.Refresh 'ОШИБКА ТУТ
Next
End Sub
Получаю ошибку следующего содержания
Run-time error '1004': Недопустимое имя поля сводной таблицы. Чтобы создать сводную таблицу, используйте данные, организованные в виде списка с заголовками столбцов. Для изменения имени поля сводной таблицы введите новое имя.
Если проверять макрорекодером, то видно, что глючит диапазон источника - размер строк и столбцов иной чем в Summary. Можно ли указать для сводной что источник Summary? или как скорректировать диапазон источника ?