2015-07-14 2 views
1

Вот мой код, который правильно сортирует весь лист в порядке возрастания на колонке 2.Сортировать первенствует столбец в порядке убывания

$table = $worksheet.ListObjects | where DisplayName -EQ "User_Table" 
$table.Sort.SortFields.clear() 
$table.Sort.SortFields.add($table.Range.Columns.Item(2)) 
$table.Sort.apply() 

Я попытался добавить xlDescending в разных местах, но получаю ошибки синтаксиса назад.

+0

я представляю себе ошибки синтаксиса, потому что xlDescending не определен. Вы можете определить его в своем сценарии, чтобы сделать ваш код более читаемым, вместо использования жестко закодированных значений, как я предлагаю ниже. –

ответ

2

В соответствии с этим ... https://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel.sortfields.add.aspx ...

SortField Add(
Range Key, 
Object SortOn, 
Object Order, 
Object CustomOrder, 
Object DataOption 
) 

Order является третьим аргументом. Объединение, что со следующим ответом ... https://stackoverflow.com/a/11770103/5040941 и вы должны быть в состоянии сделать что-то вдоль линий

$table.Sort.SortFields.add($table.Range.Columns.Item(2),0,2) 

где 0 и 2 является значением XlSortOnValues и XlDescending

Смежные вопросы