如何从排序Excel列排除第一行Excel.Range的排序方法

时间:2016-08-17 14:29:31

标签: c# excel sorting

我正在整理Excel表格,看起来像这样

Screenshot of the excel

此Excel工作表在运行时期间将包含其他条目,如" f7.3.2"," f8.3.1"等,最后我想整理Excel中。 我正在根据Column" B1"对整个Excel进行排序。如下面的代码所示

 dynamic fullDataRange = xlWorkSheet.UsedRange;
 fullDataRange.Sort(fullDataRange.Columns[2], Ex.XlSortOrder.xlAscending);

以上代码的输出是

enter image description here

在最后一行你可以找到

enter image description here

任何人都可以告诉我,我做错了什么? 我想保留第一行,然后根据B1列对Excel进行排序。 我还试图在使用下面的代码进行排序之前冻结第一行。它仍然无效。

xlWorkSheet.Application.ActiveWindow.SplitRow = 1;
xlWorkSheet.Application.ActiveWindow.FreezePanes = true;

非常感谢提前。

1 个答案:

答案 0 :(得分:0)

好的,我将 fullDataRange 对象从 动态 更改为 Excel.Range 对象和一切正常! 以下是代码

Ex.Range fullDataRange= xlWorkSheet.UsedRange;
fullDataRange.Sort(fullDataRange.Columns[2, miss], Ex.XlSortOrder.xlAscending, miss, miss, Ex.XlSortOrder.xlAscending,
             miss, Ex.XlSortOrder.xlAscending, Ex.XlYesNoGuess.xlGuess, miss, miss,
           Ex.XlSortOrientation.xlSortColumns, Ex.XlSortMethod.xlPinYin, Ex.XlSortDataOption.xlSortNormal,
           Ex.XlSortDataOption.xlSortNormal,
           Ex.XlSortDataOption.xlSortNormal);

感谢@Jeeped的评论。