如何在 Excel 中設置單元格背景圖案和顏色

如何使用 C# 對 Excel 中的儲存格進行排序

This article was translated from English: Does it need improvement?
Translated
View the article in English

在 Microsoft Excel 中進行資料分析時,按字母順序或數值順序對資料進行排序至關重要。 使用 IronXL,在 C# 和 VB.NET 中對 Excel 列、行和區域進行排序變得非常簡單。

快速入門:在一行中按列對範圍進行排序

取得您的 Excel 文件,只需使用 IronXL 的流暢 API,即可透過一行程式碼按任意列對選定的儲存格區域進行排序。 非常適合快速入門,它展示了使用 IronXL 對資料進行排序是多麼簡單又快速。

Nuget Icon立即開始使用 NuGet 建立 PDF 檔案:

  1. 使用 NuGet 套件管理器安裝 IronXL

    PM > Install-Package IronXL.Excel

  2. 複製並運行這段程式碼。

    workSheet["A1:D10"].SortByColumn("B", IronXL.SortOrder.Ascending);
  3. 部署到您的生產環境進行測試

    立即開始在您的專案中使用 IronXL,免費試用!
    arrow pointer


獨立排序列範例

對選定的範圍或欄位使用SortAscendingSortDescending方法,可以依照所需的順序進行排序。

當對具有多個列的範圍套用排序時, SortAscendingSortDescending方法將獨立迭代並將排序套用至每一列。

這些方法會將所有空白單元格推到範圍的頂部或底部。 To remove these empty cells, you can use the Trim method after sorting. 這將消除空單元格,確保資料集乾淨有序。

:path=/static-assets/excel/content-code-examples/how-to/sort-cells-range.cs
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Select a column(A)
var column = workSheet.GetColumn(0);

// Sort column(A) in ascending order (A to Z)
column.SortAscending();

// Sort column(A) in descending order (Z to A)
column.SortDescending();

workBook.SaveAs("sortExcelRange.xlsx");
Imports IronXL

Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Select a column(A)
Private column = workSheet.GetColumn(0)

' Sort column(A) in ascending order (A to Z)
column.SortAscending()

' Sort column(A) in descending order (Z to A)
column.SortDescending()

workBook.SaveAs("sortExcelRange.xlsx")
$vbLabelText   $csharpLabel
升序和降序排序

按列排序範例

SortByColumn方法可讓您根據指定的欄位對範圍進行排序。 此方法需要兩個參數:第一個參數是要排序的列,第二個參數是要套用排序的範圍。

:path=/static-assets/excel/content-code-examples/how-to/sort-cells-sort-by-column.cs
using IronXL;

WorkBook workBook = WorkBook.Load("sample.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;

// Select a range
var range = workSheet["A1:D10"];

// Sort the range by column(B) in ascending order
range.SortByColumn("B", SortOrder.Ascending);

workBook.SaveAs("sortRange.xlsx");
Imports IronXL

Private workBook As WorkBook = WorkBook.Load("sample.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet

' Select a range
Private range = workSheet("A1:D10")

' Sort the range by column(B) in ascending order
range.SortByColumn("B", SortOrder.Ascending)

workBook.SaveAs("sortRange.xlsx")
$vbLabelText   $csharpLabel
按特定列排序

目前還無法按多列排序,例如,先按 A 列排序,再按 B 列排序。

常見問題解答

如何使用 C# 在 Excel 中對單元格範圍進行排序?

要使用C#在Excel中對單元格範圍進行排序,您可以使用IronXL。首先,從NuGet下載庫,然後加載您的Excel電子表格,選擇您要排序的範圍或列。根據所需的排序順序應用SortAscendingSortDescending方法。

我可以使用C#獨立排序Excel列嗎?

是的,使用IronXL,您可以在C#中獨立排序Excel列。在選擇的範圍或列上使用SortAscendingSortDescending方法,這將獨立應用於每個列。

我如何以編程方式排序Excel行的降序?

要使用IronXL以編程方式按降序排序Excel行,載入您的Excel文件並在選中的範圍或列上使用SortDescending方法。這將使您的數據以降序排列。

使用C#排序Excel範圍後是否可以刪除空單元格?

是的,使用IronXL排序Excel範圍後,您可以使用Trim方法刪除空單元格。這將通過刪除空單元格來清理數據集。

我如何使用C#根據特定列對範圍進行排序?

要使用C#根據特定列對範圍進行排序,使用IronXL提供的SortByColumn方法。您需要指定列索引和應用排序的範圍。

我可以使用C#庫同時按多個列排序嗎?

不,目前IronXL不支持同時按多個列排序。您可以使用SortByColumn方法一次按一列排序。

我如何以編程方式保存排序的Excel數據?

使用IronXL排序您的Excel數據後,您可以使用SaveAs方法將排序的數據保存到一個新的Excel文件中,以確保保存您的更改。

在C#中排序Excel數據時空單元格會怎麼樣?

在使用IronXL在C#中排序Excel數據時,空單元格將被推至範圍的頂部或底部。然後您可以使用Trim方法刪除這些空單元格。

Chaknith Bin
軟體工程師
Chaknith 在 IronXL 和 IronBarcode 上工作。他對 C# 和 .NET 擁有深厚的專業知識,幫助改進了軟體並支持客戶。他從用戶互動中得到的見解有助於改善產品、文檔和整體體驗。
準備好開始了嗎?
Nuget 下載 1,738,553 | Version: 2025.11 剛發表