C # Excel Range Sort - PullRequest
       5

C # Excel Range Sort

0 голосов
/ 15 июля 2011

Я бы хотел отсортировать диапазон. Первая строка (строка 3 в книге Excel) содержит заголовки столбцов, которые необходимо отсортировать слева направо в порядке возрастания:

Excel.Range tempRange = ws.get_Range("F3", "H8");

tempRange.Sort(Type.Missing,
                    Excel.XlSortOrder.xlAscending,
                    Type.Missing,
                    Excel.XlSortOrder.xlAscending,
                    Excel.XlSortOrder.xlAscending,
                    Type.Missing,
                    Excel.XlSortOrder.xlAscending,
                    Excel.XlYesNoGuess.xlYes,
                    Type.Missing,
                    Type.Missing,
                    Excel.XlSortOrientation.xlSortColumns,
                    Excel.XlSortMethod.xlPinYin,
                    Excel.XlSortDataOption.xlSortNormal,
                    Excel.XlSortDataOption.xlSortNormal,
                    Excel.XlSortDataOption.xlSortNormal);

В настоящее время генерируется ошибка «Метод сортировки класса Range не выполнен».

Я пробовал различные параметры в начале метода сортировки, но при этом создается ссылка «Ссылка на сортировку недопустима. Убедитесь, что они находятся внутри данных, которые вы хотите отсортировать, и первое поле «Сортировка по» не является тем же или пустым ».

Куда я иду не так?

Эквивалентный VBA Работает нормально:

 With ActiveWorkbook.Worksheets("Sheet1").Sort
    .SetRange Range("F3:H8")
    .Header = xlYes
    .MatchCase = False
    .Orientation = xlLeftToRight
    .SortMethod = xlPinYin
    .Apply
End With

Большое спасибо

Джо

1 Ответ

1 голос
/ 20 июля 2011

Я указал Диапазон как первый параметр и установил Ориентацию в Excel.XlSortOrientation.xlSortRows.

                tempRange.Sort(tempRange,
                    Excel.XlSortOrder.xlAscending,
                    Type.Missing, Type.Missing,
                    Excel.XlSortOrder.xlAscending,
                    Type.Missing,
                    Excel.XlSortOrder.xlAscending,
                    Excel.XlYesNoGuess.xlYes, 
                    Type.Missing,
                    Type.Missing,
                    Excel.XlSortOrientation.xlSortRows,
                    Excel.XlSortMethod.xlPinYin,
                    Excel.XlSortDataOption.xlSortNormal,
                    Excel.XlSortDataOption.xlSortNormal,
                    Excel.XlSortDataOption.xlSortNormal);

Полезная ссылка:

http://social.msdn.microsoft.com/Forums/en-US/exceldev/thread/a699d754-98d5-4241-87da-8761c520ba72/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...