Как я могу перечислить сводное поле с ориентацией xlColumnField в определенном пользовательском порядке в C # - PullRequest
0 голосов
/ 14 июня 2019

Я разворачиваюсь на поле Спорт. Предположим, есть 4 вида спорта (теннис, бейсбол, софтбол, футбол). Когда создается сводная таблица, я хочу, чтобы метки столбцов отображались в произвольном порядке. Как я могу сделать это в C #.

enter image description here

1 Ответ

0 голосов
/ 19 июня 2019
                    Excel.PivotField pf = (Excel.PivotField)pvtTable.PivotFields("Sport");
                //Desired list order.
                List<string> oListOrder = new List<string>() { "Football", "Tennis", "Baseball", "Softball" };  
                foreach (Excel.PivotItem pi in pf.PivotItems()) {
                    //Get index in desired list order.
                    int idx = oColumnSort.IndexOf(pi.Name); 
                    //If PivotItem in ordered list set PivotItem position to that of list. 
                    //Add 1 bc Position & List have different starting base.
                    if (idx >= 0) pi.Position = idx + 1;
                }
...