我想在C#中对来自VSTO的excel电子表格进行排序。但我想使用自己的客户排序技术,因此无法使用Range.Sort方法。我想如果我们能够开始在一个很好的范围内交换行的能力。
答案 0 :(得分:0)
我认为交换行对于用户来说太慢了,但还没有尝试过。 custom sorting in Excel不适合你吗?我记得几年前在VBA中使用它(当时可能是Excel 2003)
如果您正在处理大量数据(但也适合小型数据),您可以考虑将范围加载到数组中,通过C#对其进行排序,然后将其放回Excel中。
System.Array dataArray = (System.Array)(range.Cells.Value2); //the value is boxed two-dimensional array
您将不得不处理格式,但我仍然认为它比使用Excel范围对象操作要快得多