[英]Sort a worksheet by a column using Interop
我在互聯網上找到了各種相關代碼,但似乎沒有任何效果。 也許有人可以指出我的錯誤:
// Get a Range of the data to sort
// (I also tried to use _worksheet.UsedRange, but it fails - why?)
var dataToSort = _worksheet.Range["A2", $"Z{lastLine}"];
// Sort range
dataToSort.Sort(_worksheet.Range["A2"]);
有趣的是,它使用列而不是行......
其實我想寫這樣的東西:
_worksheet.Sort(columnIndex: 1);
但我找不到合適的重載。
我的工作表如下所示:
1 | | |
2 | Z | Data2 |
3 | A | Data1 |
我希望它以后看起來像這樣:
1 | | |
2 | A | Data1 |
3 | Z | Data2 |
(將 Excel 2019 和 Excel 互操作 15 用於 xlsx 文件)
哎呀,無論出於何種原因, 排序方向默認為xlSortRows
。 我不得不切換到xlSortColumns
,現在它可以與這個簡單的 oneliner 一起使用:
_worksheet.UsedRange.Sort(_worksheet.Columns[1], Orientation: XlSortOrientation.xlSortColumns);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.