/ / C # Excel Range Сортиране - c #, excel-vba, vba, excel

C # Excel Range Сортиране - c #, excel-vba, vba, excel

Бих искал да сортирам диапазон. Първият ред (ред 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);

Това понастоящем генерира грешка "Метода за сортиране на класа от тип" не е успешен ".

Опитах различни параметри в началото нано това генерира "Препратката за сортиране не е валидна.Уверете се, че тя е в данните, които искате да сортирате, а първата кутийка Сортирай по не е същото или празно".

Къде отивам?

Еквивалентът на VBA работи добре:

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

Много благодаря

Джо

Отговори:

1 за отговор № 1

Посочих Обсегът като първи параметър и зададох ориентацията на 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/