У меня есть список объектов, и я хочу увидеть наиболее часто используемый объект. Я знаю, что мог бы написать формулу для этого, если бы был только 1 объект, который использовался чаще всего, но иногда результаты связаны, и у нас может быть 2, 3, 4... объекты, все используемые одинаковое количество раз.
Поэтому я считаю, что Pivot с использованием ранжирования может быть лучшим способом представления результатов, если я могу фильтровать все объекты с RANK 1.
Однако я не могу понять, как заставить Pivot просто отображать результаты RANK 1. Например, ниже приведен источник данных;
Object
Pencil
Pencil
Pencil
Paper
Paper
Paper
Ruler
Ruler
Rubber
При размещении в Pivot вы получите:
Object Vol. Rank
Pencil 3 1
Paper 3 1
Ruler 2 2
Rubber 1 3
Как заставить Pivot отображать только RANK 1. И как бы я написал это в Excel VBA?
Вы можете применить фильтр на ранге 1.
Вы можете применить фильтр «Top 1 Count» к PivotField следующим образом:
With ActiveSheet.PivotTables(1)
.PivotFields("Object").PivotFilters.Add2 _
Type:=xlTopCount, _
Value1:=1, _
DataField:=.DataFields(1)
End With
Спасибо. Я не думал об опции Top x Count. Это отлично работает для того, что мне нужно.
А вы пробовали формулу
RANK
? См. здесь. После этого просто отфильтруйте по Rank = 1, я думаю.