2016-10-10 5 views
1

В книге Excel я имею «статическую» сводную таблицу на листе, основанную на данных с другого листа.Excel VBA - PivotItems возвращает значение, не имеющее значения

Я обновляю данные в своем листе данных (спасибо капитану Очевидным!), Затем я хочу показать ВСЕ элементы, кроме пустого, поэтому я запускаю все PivotItems, чтобы установить их на видимые и, в конце концов, снимите выделение один пустой:

i = 1 

ThisWorkbook.Sheets("TCD").PivotTables(i).PivotFields("CODETAT").ClearAllFilters 
ThisWorkbook.Sheets("TCD").PivotTables(i).PivotCache.MissingItemsLimit = xlMissingItemsNone 
For Each PvI In ThisWorkbook.Sheets("TCD").PivotTables(i).PivotFields("CODETAT").PivotItems 
    PvI.Visible = True 
Next 

ThisWorkbook.Sheets("TCD").PivotTables(i).PivotFields("CODETAT").PivotItems("(blank)").Visible = False 

на последнем происходит из моего цикла, на 4-й PivotItems, у меня есть ошибка выполнения «1004» (я переведу его с французского, это может мне некоторые ошибки, извините) «Невозможно определить свойство« Видимый класса PivoItem », поэтому я проверил несколько вещей:

?ThisWorkbook.Sheets("TCD").PivotTables(i).PivotFields("CODETAT").PivotItems.count 
4 

при х = 1 до 4:

?ThisWorkbook.Sheets("TCD").PivotTables(i).PivotFields("CODETAT").PivotItems(x) 
(blank) 
SFT 
ACQ 
TEP 

Это выглядеть как у меня есть 4 пункта в моей сводной таблице, но

enter image description here

А также, когда я просматриваю ДАННЫЕ, у меня только 2 разных статистики: enter image description here

Итак, откуда этот 4-й элемент PivotItems, и как я могу его проехать? Спасибо.

+2

У меня был удивительный вопрос, как это, проверьте в 'Pivot Table options' (правой кнопкой мыши на столе!), на вкладке «Данные» вы должны найти «Сохранить элементы, удаленные из источника данных», выберите «Нет» для «Количество элементов, которые нужно сохранить за поле». Тогда обновить все должно быть в порядке! ;) (эта ошибка приводила меня в бешенство в течение нескольких часов! ^^) – R3uK

+1

На самом деле это было уже никому, я снял все, выбрал максимум, сохранил, закрыл, снова проверил и установил None, и теперь он работает нормально ... Thx для подсказки, я никогда не слышал об этом! http://i.stack.imgur.com/oFSOT.jpg – Jaggana

ответ

2

У меня был удивительный вопрос, как это, вы должны проверить в настройках сводной таблицы:

  • правой кнопкой мыши на сводной таблице,
  • Выберите Pivot Table options
  • Перейти в Data вкладке
  • Найти Retain items deleted from the data source
  • Выберите None для Number of items to retain per field!
  • Затем обновите! Теперь все должно быть хорошо! ;)

(что вещь сводили меня с ума в течение нескольких часов ^^)

enter image description here