C## 讀取 XLSX 檔案。

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

要在 C# 中讀取 XLSX 檔案,請使用 IronXL.Excel 的 WorkBook.Load 方法開啟 Excel 檔案,並存取工作表,以程式化的方式讀取儲存格資料、執行計算,以及轉換為 DataTable 或 DataSet 格式。

快速入門:輕鬆載入工作簿並存取工作表

使用 IronXL,您可以在一行中使用 WorkBook.Load 方法載入 XLSX 檔案。然後即時存取其第一個或命名的工作表,並開始讀取儲存格值。

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

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

    PM > Install-Package IronXL.Excel

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

    IronXL.WorkBook workbook = IronXL.WorkBook.Load("your-file.xlsx");
  3. 部署到您的生產環境進行測試

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

讀取 .XLSX 檔(C#)

  • 為您的專案選擇 IronXL
  • 載入 WorkBook
  • WorkSheet 存取資料
  • 應用求和、最小值和最大值等函數
  • WorkSheet 讀取為 DataTable、DataSet 等。
How To Work related to C## 讀取 XLSX 檔案。

如何為我的專案取得 IronXL? 在您的專案中使用 IronXL,可以以簡單的方式在 C# 中處理 Excel 檔案格式。 你可以[透過直接下載安裝 IronXL](/csharp/excel/packages/IronXL.zip) ,或者也可以使用[NuGet Install for Visual Studio](https://www.nuget.org/packages/IronXL.Excel) 。 該軟體可免費用於開發。 ```shell :ProductInstall ``` 在深入閱讀 XLSX 檔案之前,請探索 [ 全面的 IronXL 文件](https://ironsoftware.com/csharp/excel/docs/),以瞭解所有可用的功能。 IronXL 支援 .xls 和 .xlsx 兩種格式,因此可通用於傳統和現代 Excel 檔案。

操作指南

如何載入工作簿? `WorkBook` 是 IronXL 的類別,其物件提供對 Excel 檔案及其所有功能的完整存取。 例如,若要存取 Excel 檔案,請使用代碼: ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-load-workbook.cs ```

為什麼要使用 WorkBook.Load() 方法? 在上面的程式碼中, `WorkBook.Load()`函數將`sample.xlsx`載入到`workBook`中。 透過存取 Excel 檔案的特定 WorkSheet,可以在 `workBook` 上執行任何類型的功能。`WorkBook.Load` 方法會自動偵測檔案格式,不論是 XLS、XLSX、XLSM、XLTX 或 CSV。如需更進階的載入情境,請參閱 [ 載入試算表](https://ironsoftware.com/csharp/excel/how-to/load-spreadsheet/)的詳細指南。

如何存取特定的工作表? 要存取 Excel 檔案的特定 `WorkSheet` ,IronXL.Excel 提供了 `WorkSheet` 類。 它可以用於幾種不同的方式:

存取工作表的不同方式有哪些? ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-get-worksheet.cs ``` `workBook` 是在上述部分中宣告的 `WorkBook` 。 或者 ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-worksheet-index.cs ``` 或者 ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-default-worksheet.cs ``` 或者 ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-first-worksheet.cs ``` 或者 ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-first-or-default-worksheet.cs ```

我應該在何時使用各工作表存取方法? 每種方法都有其理想的使用個案: - **`GetWorkSheet("name")`**:當您知道確切的工作表名稱時 - **`WorkSheets[index]`**:用於以程式方式迭代工作表 - **`DefaultWorkSheet`**:使用單一工作表檔案時的快速存取 - **`First()`或`FirstOrDefault()`**:工作表名稱可能改變時的安全選項 取得 ExcelSheet `workSheet`後,您可以從中取得任何類型的數據,並對其執行所有 Excel 功能。 如需更複雜的工作表操作,請參閱 [以 C# 開啟 Excel 工作表](https://ironsoftware.com/csharp/excel/how-to/c-sharp-open-excel-worksheet/)的指南。

如何從工作表存取資料? 可以透過以下步驟從 Excel `workSheet`中存取資料:

我可以從儲存格讀取哪些資料類型? ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-get-data.cs ``` IronXL 為不同的資料類型提供各種值存取器: - **`StringValue`**:適用於文字資料 - **`Int32Value`**:用於整數 - **`DoubleValue`**:用於小數 - **`DateTimeValue`**:用於日期 - **`BoolValue`**:用於真假值

如何一次讀取多個儲存格? 您也可以從特定列的多個儲存格取得資料: ```csharp foreach (var cell in workSheet["A2:A10"]) { Console.WriteLine("Value is: {0}", cell.Text); } ``` 這會顯示從儲存格 `A2` 到 `A10` 的值。 如需更多進階的範圍選擇技巧,請造訪 [選擇範圍教學](https://ironsoftware.com/csharp/excel/how-to/select-range/)。

完整的實作是什麼樣子? 在此提供上述具體內容的完整程式碼範例: ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-log-data.cs ``` 它會顯示以下結果:
控制台輸出顯示擷取的工作表資料,包含政府、私人、中型市場和通路夥伴的值
使用 Excel 檔 `Sample.xlsx`:
Excel 試算表中的業務資料顯示 16 行中的區段、國家、產品和折扣區段欄位
這些方法說明在專案中使用 Excel 檔案資料是多麼毫不費力。 如需在不使用 Interop 的情況下閱讀 Excel 檔案的實用範例,請探索 [閱讀 Excel 範例](https://ironsoftware.com/csharp/excel/examples/read-excel/)。

如何在資料上執行函數? 使用以下程式碼,套用 Sum、Min 或 Max 等聚集函數,從 Excel `WorkSheet` 存取篩選過的資料:

哪些聚合功能可用? ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-aggregate-function.cs ``` IronXL 支援多種數學函數,包括: - **`Average()`**:計算平均值 - **`Count()`**:計數非空儲存格 - **`CountIf()`**:計數符合條件的儲存格 - **`Median()`**:找出中間值 - **`StdDev()`**:計算標準差

如何同時實作多個函數? 如需詳細資訊,請參閱我們關於如何[撰寫 C# Excel 檔案](https://ironsoftware.com/csharp/excel/tutorials/csharp-open-write-excel-file/#advanced-operations-sum-avg-count-etc)的深入教學,其中包含聚合函數的具體說明。 您也可以探索 [ IronXL.Excel 中可用的數學函數的完整清單](https://ironsoftware.com/csharp/excel/how-to/math-functions/)。 ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-min-max.cs ``` 這段程式碼會顯示以下輸出:
顯示資料分析結果的終端:黑色背景上 Sum=482, Min=12, Max=350
這就是 Excel 檔 `Sample.xlsx` 的外觀:
Excel 試算表,包含銷售資料,顯示多行的區段、國家、產品、銷售單位和定價

如何將 Excel WorkSheet 讀取為 DataTable? 使用 IronXL,可以輕鬆地將 Excel `WorkSheet` 作為 DataTable 來處理。 當您需要將 Excel 資料整合至現有的資料處理管道或將資料綁定至 UI 控制項時,此功能尤其有用。

基本的轉換方法是什麼? ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-datatable.cs ```

如何使用第一行作為欄頭? 要使用 ExcelSheet 的第一行作為 DataTable ColumnName: ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-datatable-header.cs ``` `ToDataTable()` 的布林參數會設定第一行為您 DataTable 的欄名。 預設值為`False` 。 這在處理包含標頭的結構化資料時尤其有用。

如何遍歷 DataTable? ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-print-datatable.cs ``` 使用上述程式碼,可根據需要存取並使用 `WorkSheet` 的每個儲存格值。 如需更進階的 DataTable 操作,請參閱 [ 以 DataSet 的形式匯入和匯出](https://ironsoftware.com/csharp/excel/how-to/export-dataset-datatable/)的指南。

如何將 Excel 檔案讀取為 DataSet? IronXL.Excel 提供了一個簡單的函式,可將完整的 Excel 檔案 (`WorkBook`) 用作 DataSet。 使用 `ToDataSet` 方法將整個工作簿轉換成 DataSet。 在這個例子中,我們將看到如何將 Excel 檔案用作資料集。

如何將工作簿轉換為 DataSet? ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-excel-to-dataset.cs ``` 上述程式碼的輸出如下:
損毀或不完整的螢幕截圖,只顯示 Sheet1、Sheet2、Sheet3 標籤
而 Excel 檔 `Sample.xlsx` 看起來是這樣的:
Excel 試算表的多頁工作簿,顯示不同市場區塊和國家的業務資料

如何在所有工作表中存取每個儲存格的值? 在上述範例中,我們可以輕鬆地將 Excel 檔案解析為 DataSet,並將 Excel 檔案中的每個 `WorkSheet` 作為 DataTable 來處理。 深入瞭解如何 [ 將 Excel 解析為 DataSet](https://ironsoftware.com/csharp/excel/#excel-sql-dataset) 此處提供的程式碼範例。 讓我們再來看一個例子,了解如何存取所有 Excel 工作表中每個儲存格的值。 在此,我們可以存取 Excel 檔案中每個 `WorkSheet` 的每個儲存格值。 ```csharp :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-all-excel-sheets.cs ``` 使用上面的範例,可以很方便地存取 Excel 檔案中每個 `WorkSheet` 的每個儲存格值。這種方法在處理資料分佈於不同標籤的多工作表工作簿時特別有用。 有關如何 [Read Excel Files Without Interop](https://ironsoftware.com/csharp/excel/tutorials/how-to-read-excel-file-csharp/) 的更多資訊,請查看此處的程式碼。 API 參考文件在 [IronXL API Reference](https://ironsoftware.com/csharp/excel/object-reference/api/) 中提供了所有可用方法和屬性的全面詳細資訊。

教程快速存取

IronXL API 參考

請參閱文檔,以了解有關 IronXL 的功能、類別、方法欄位、命名空間和枚舉的更多資訊。

IronXL API 參考
Documentation related to 教程快速存取

常見問題解答

如何在 C# 中讀取 XLSX 檔案?

要在 C# 中讀取 XLSX 檔案,請使用 IronXL 的 WorkBook.Load 方法。只需使用 IronXL.WorkBook.Load("your-file.xlsx") 載入 Excel 檔案,然後以程式化方式存取工作表以讀取儲存格資料、執行計算,以及轉換為 DataTable 或 DataSet 格式。

載入 Excel 檔案時支援哪些檔案格式?

IronXL.Excel 支援多種 Excel 檔案格式,包括 .xls、.xlsx、.xlsm、.xltx 及 .csv 檔案。WorkBook.Load 方法可自動偵測檔案格式,使其同時適用於傳統與現代 Excel 檔案。

如何為我的 C# 專案安裝 Excel 閱讀函式庫?

您可以透過直接下載或透過 Visual Studio 的 NuGet Install 安裝 IronXL。此軟體可免費用於開發目的,並提供一種簡單的方式在 C# 中處理 Excel 檔案格式。

存取特定工作表的不同方式有哪些?

IronXL 提供了多種存取工作表的方式:您可以使用 workBook.GetWorkSheet("SheetName") 以名稱存取,使用 workBook.WorkSheets[0] 以索引存取,或使用 workBook.WorkSheets.First() 取得第一個工作表。

載入 Excel 資料後,可以執行計算嗎?

是的,使用 IronXL 載入 XLSX 檔案後,您可以在資料上套用 Sum、Min 和 Max 等各種函數。該函式庫透過 WorkBook 物件提供了對 Excel 檔功能的完整存取。

是否可以將 Excel 工作表資料轉換為其他格式?

是的,IronXL 允許您讀取 WorkSheet 並將其轉換為各種格式,包括 DataTable、DataSet 等。這可讓您輕鬆地將 Excel 資料整合至 C# 應用程式中。

Curtis Chau
技術作家

Curtis Chau 擁有卡爾頓大學計算機科學學士學位,專注於前端開發,擅長於 Node.js、TypeScript、JavaScript 和 React。Curtis 熱衷於創建直觀且美觀的用戶界面,喜歡使用現代框架並打造結構良好、視覺吸引人的手冊。

除了開發之外,Curtis 對物聯網 (IoT) 有著濃厚的興趣,探索將硬體和軟體結合的創新方式。在閒暇時間,他喜愛遊戲並構建 Discord 機器人,結合科技與創意的樂趣。

準備好開始了嗎?
Nuget 下載 1,765,830 | 版本: 2025.12 剛發表