使用IRONXL

如何在 C# 中導入 Excel 文件

已更新 2024年2月20日
分享:

Microsoft Excel 是一款多用途的試算表軟體,有助於資料組織、呈現和分析。 然而,以C#程式化地操作Excel可能具有挑戰性。 IronXL 軟體庫可以用來匯入和讀取 C# 中的 Excel 檔案。

IronXL - Excel 資料庫

IronXL是一個 .NET Excel 庫,以用戶的易用性、準確性和速度為優先考量。 它幫助您匯入和讀取Excel文件,並以快速的效能高效地創建和編輯Excel文件。 它可以在不使用 MS Office Interop 的情況下運作。這意味著即使未安裝 Excel,也能提供讀取 Excel 文件的所有功能。 這使 IronXL 成為開發人員在 C# 中匯入和讀取 Excel 文件的強大工具。

IronXL 可在所有平台上使用,例如 Windows、Linux、MacOS、Docker、Azure 和 AWS。 它兼容所有 .NET Framework。 IronXL 是一個多功能的庫,可整合到控制台、桌面和 Web ASP.NET 應用程序中。 它支持不同的工作簿格式,如XLS和XLSX文件、XSLT和XLSM、CSV和TSV。

一些重要功能

  • 打開、讀取 Excel 文件並從中搜尋資料不同的試算表格式如 XLS/CSV/TSV/XLSX 檔案。
  • 將 Excel 工作表匯出為 XLS/XLSX/CSV/TSV/JSON。

    *加密和解密帶有密碼的XLSM/XLTX/XLSX文件。

  • 將 Excel 工作表匯入作為 System.Data.DataSetSystem.Data.DataTable 物件。
  • Excel 檔案公式在每次編輯工作表時,會重新計算。
  • 使用 WorkSheet 進行直觀的儲存格範圍設置["A1:B10"]簡單語法。
  • 排序儲存格範圍、欄和列。
  • 樣式單元格 - 字體、字體大小、背景顏色,邊框, 對齊编号格式.

如何在C#中導入Excel工作簿?

先決條件

要在 C# 中使用 IronXL 讀取 Excel 文件,請確保電腦上安裝了以下組件:

  1. Visual Studio - 它是開發 C# .NET 應用程式的官方 IDE。 您可以從以下位置下載和安裝 Visual Studio:Microsoft 網站.

  2. IronXL - 它是幫助處理指定路徑下 Excel 工作表的 C# 庫。 在使用之前必須安裝在 C# 程式中。 IronXL 可以從NuGet網站或在 Visual Studio 工具中管理 NuGet 套件。 您還可以下載.NET Excel DLL直接檔案。

添加必要的命名空間

一旦安裝了 Visual Studio 和 IronXL,請在原始碼中引用 IronXL 程式集以使用 IronXL。 在使用IronXL功能的新專案中,將以下程式碼行添加到檔案頂部:

using IronXL;  
using IronXL;  
Imports IronXL
VB   C#

在 C# 中打開現有的 Excel 檔案

Microsoft Excel 試算表也稱為 Excel 工作簿。 每個活頁簿包含多個工作表,而單個工作表包含具有其值的表格單元格。 To打開並讀取 Excel 文件,應該使用 加載Workbook類別和載入IronXL 函式庫中的方法。 代碼如下:

//Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV and TSV
WorkBook workbook = WorkBook.Load("test.xlsx");  
//Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV and TSV
WorkBook workbook = WorkBook.Load("test.xlsx");  
'Supported Excel spreadsheet formats for reading include: XLSX, XLS, CSV and TSV
Dim workbook As WorkBook = WorkBook.Load("test.xlsx")
VB   C#

這會在工作簿實例參考變數中開啟 Excel 文件。 由於它可以包含多個工作表,因此可以用來開啟特定工作表或一次開啟所有工作表。 以下程式碼打開工作表例項變數中的第一個工作表:

WorkSheet sheet = workbook.WorkSheets.First();  
WorkSheet sheet = workbook.WorkSheets.First();  
Dim sheet As WorkSheet = workbook.WorkSheets.First()
VB   C#

這將打開 Excel 文件中的第一個工作表,現在可以讀取和寫入此工作表中的 Excel 數據。

開啟的 Excel 檔案

如何在 C# 中匯入 Excel 檔案,圖 1:Excel 檔案

Excel 檔案

從匯入的 Excel 檔案讀取資料

一旦 Excel 文件被導入,即可準備讀取數據。 使用IronXL在C#中讀取Excel文件數據非常簡單和容易。 您只需提到單元格參考號,就可以讀取 Excel 單元格值。

以下代碼檢索參考號為「C2」的單元格值:

//Select cells easily in Excel-notation and return the value
int cellValue = sheet ["C2"].IntValue;

//Display the value
Console.WriteLine(cellValue);
//Select cells easily in Excel-notation and return the value
int cellValue = sheet ["C2"].IntValue;

//Display the value
Console.WriteLine(cellValue);
'Select cells easily in Excel-notation and return the value
Dim cellValue As Integer = sheet ("C2").IntValue

'Display the value
Console.WriteLine(cellValue)
VB   C#

輸出如下:

如何在C#中匯入Excel文件,圖2:讀取Excel

讀取 Excel

現在,讓我們從已開啟的 Excel 文件中的一系列儲存格讀取數據。代碼如下:

// Read from Range of cells elegantly.
foreach (var cell in sheet ["A2:A6"]) {
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}  
// Read from Range of cells elegantly.
foreach (var cell in sheet ["A2:A6"]) {
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}  
' Read from Range of cells elegantly.
For Each cell In sheet ("A2:A6")
	Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
VB   C#

代碼非常簡單、清晰明瞭。 單元格範圍可以通過簡單的語法在 foreach 循環中引用:sheet["A2:A6"] 並且可以使用 for 迴圈迭代每個單元格以獲取其值。 在這裡,您將在控制台輸出中看到第2行到第6行的A列名稱:

如何在 C# 中匯入 Excel 文件,圖 3:讀取單元格範圍

讀取單元格範圍

有關讀取和寫入單元格值的更多詳細信息,請查看此教學課程。在C#範例中讀取Excel文件.

從 Excel 文件匯入所有數據

IronXL 可用於透過行和列索引一次性讀取 Excel 表格。 以下 IronXL 程式碼範例有助於在主控台輸出中獲取整個 Excel 檔案數據並保持相同格式:

WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();

//Traverse all rows of Excel WorkSheet
for (int i = 0; i < sheet.Rows.Count(); i++) {
    //Traverse all columns of specific Row
    for (int j = 0; j < sheet.Columns.Count(); j++) {
        //Get the values 
        string val = sheet.Rows [i].Columns [j].Value.ToString();
        Console.Write("{0}\t", val);
    }
    Console.WriteLine();
}  
WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();

//Traverse all rows of Excel WorkSheet
for (int i = 0; i < sheet.Rows.Count(); i++) {
    //Traverse all columns of specific Row
    for (int j = 0; j < sheet.Columns.Count(); j++) {
        //Get the values 
        string val = sheet.Rows [i].Columns [j].Value.ToString();
        Console.Write("{0}\t", val);
    }
    Console.WriteLine();
}  
Imports Microsoft.VisualBasic

Dim workbook As WorkBook = WorkBook.Load("test.xlsx")
Dim sheet As WorkSheet = workbook.WorkSheets.First()

'Traverse all rows of Excel WorkSheet
For i As Integer = 0 To sheet.Rows.Count() - 1
	'Traverse all columns of specific Row
	For j As Integer = 0 To sheet.Columns.Count() - 1
		'Get the values 
		Dim val As String = sheet.Rows (i).Columns (j).Value.ToString()
		Console.Write("{0}" & vbTab, val)
	Next j
	Console.WriteLine()
Next i
VB   C#

輸出文件

如何在 C# 中匯入 Excel 檔案,圖 4:讀取 Excel 檔案的輸出控制台

讀取 Excel 文件的輸出控制台

添加圖片替代文字。

摘要

本文展示了如何在未安装任何 Microsoft Excel 的情況下,使用 C# 匯入和讀取 Excel 文件。 然後考慮了多種從 Excel 試算表讀取資料的方法。 IronXL 也能在沒有安裝 Excel 的情況下,用 C# 創建 Excel 文件。

IronXL 提供一個全方位解決方案,能夠以編程方式實現所有與 Microsoft Excel 文件相關的任務。 您可以執行公式計算、字串或數字排序、刪減和附加、查找和替換、合併和取消合併、儲存檔案等。您還可以編輯儲存格值,並設置儲存格數據格式,同時驗證試算表數據。 它還支持 CSV 文件,幫助您像處理 Excel 數據一樣工作。

IronXL可免費試用並且可以授權供商業用途使用,其 Lite 套件起價僅 $749。

< 上一頁
如何在 C# 中將 Datatable 導出到 CSV
下一個 >
如何在 C# 中將資料集轉換爲 CSV

準備開始了嗎? 版本: 2024.11 剛剛發布

免費 NuGet 下載 總下載次數: 1,111,773 查看許可證 >