Страницы: 1
RSS
ошибка при обновлении сводной таблицы
 
Доброго времени суток

Строю таблицу Summary на листе Data, которая должна обновить сводную Svod на листе REPORT. К сожалению, саму сводную строил не я - это наследство :(

Этот код выполняется когда лист Data активен
Код
'создание таблицы Summary
ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(2, 1), Cells(getLastRow("A"), getLastColumn("A", 2))), , xlGuess, xlNo).Name = "Summary"
ActiveSheet.ListObjects("Summary").TableStyle = "TableStyleLight14"
'обновить все
Refresh 
Для обновления сводной нашел функцию отсюда

http://www.planetaexcel.ru/forum/index.php?FID=1&MID=501177&PAGE_NAME=message&TID=59837#message50117...
Код
'функция обновления сводной таблицы
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? или как скорректировать диапазон источника ?

Спасибо

P.S. файл приложить не могу :(
 
Цитата
roocs написал: используйте данные, организованные в виде списка с заголовками столбцов
ЕМНИП, то данная ошибка возникает, когда встречаются пустые заголовки.
Цитата
roocs написал: файл приложить не могу
Помогающим за Вас пример состряпать? (и преподнести готовое решение на тарелочке с голубой каёмочкой)

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
Страницы: 1
Читают тему
Наверх