跳過到頁腳內容
使用 IRONXL

如何在 C# 從 Excel 文件中獲取單元格值

在本文中,我們將討論如何使用IronXL從 Excel 檔案中取得特定儲存格的值。

1. IronXL

IronXL是一個功能強大的.NET開發人員軟體庫,它提供了一種簡單且有效率的方式,可以在應用程式中讀取、寫入和操作 Excel 電子表格。 它提供了一系列功能,使處理 Excel 文件變得輕鬆高效,包括創建、修改和刪除工作表、讀取和寫入單元格數據,甚至使用 Excel 公式執行複雜的計算。 借助IronXL,開發人員可以快速輕鬆地將 Excel 功能整合到他們的應用程式中,從而節省時間並簡化開發流程。 無論您是在建立財務應用程式或資料分析工具,還是僅僅需要在應用程式中讀取和寫入 Excel 文件, IronXL都能提供靈活可靠的解決方案。

2. 先決條件

如果要使用IronXL庫來提取 Excel 檔案中特定儲存格的值,則必須滿足某些先決條件,其中包括:

  • 在您的電腦上安裝 Visual Studio,因為建立 C# 專案需要使用到它。
  • 在您的系統上安裝ASP.NET 。
  • 在您的系統上安裝IronXL庫,以便使用該庫匯出資料。 您可以透過從 Visual Studio 中的NuGet套件管理器下載IronXL NuGet套件來取得它。

3. 在 Visual Studio 中建立新項目

若要使用IronXL程式庫執行與 Excel 相關的任務,您必須先在 Visual Studio 中建立一個.NET專案。 雖然可以使用任何版本的 Visual Studio,但建議選擇最新版本。 根據您的特定需求,您可以選擇多種專案模板,包括 Windows Forms 和ASP.NET。 本教學將使用控制台應用程式專案範本來示範如何使用IronXL。

如何在 C# 中從 Excel 檔案取得儲存格值,圖 1:建立一個新的專案視窗 建立一個新的專案視窗

選擇專案類型後,為專案命名,並選擇專案位置以及所需的專案框架,例如.NET Core 6。

如何在 C# 中從 Excel 檔案取得儲存格值,圖 2:專案配置 專案配置

解決方案創建完成後,程式檔案 program.cs 將打開,您可以輸入程式碼並建置/運行應用程式。

如何在 C# 中從 Excel 檔案取得儲存格值,圖 3:已開啟程式碼的項目 專案代碼已打開

現在這個新的 Visual Studio 專案已經建立完成,讓我們來安裝IronXL。

4. 安裝IronXL

IronXL庫可以透過幾種不同的方法下載和安裝。 但這兩種方法是最簡單的。

這些都是:

  • 在 Visual Studio 中使用NuGet套件。
  • 使用 Visual Studio 命令列。

4.1 使用 Visual Studio

若要安裝IronXL庫,請在 Visual Studio 中導覽至NuGet套件管理器。 只需開啟NuGet套件管理器,然後在"瀏覽"標籤中搜尋IronXL即可。 在搜尋結果中找到IronXL後,選擇它並繼續進行安裝。 安裝完成後,您就可以在專案中使用IronXL庫了。

下面這張截圖展示如何在 Visual Studio 中開啟NuGet套件管理器。

如何在 C# 中從 Excel 檔案取得儲存格值,圖 4: NuGet套件管理員 NuGet套件管理器

以下顯示了IronXL在搜尋結果中的顯示:

如何在 C# 中從 Excel 檔案取得儲存格值,圖 5: IronXL搜尋結果 IronXL搜尋結果

4.2 使用 Visual Studio 命令列

許多開發者喜歡使用命令列介面安裝軟體包。 若要使用命令列安裝IronXL ,請依照下列步驟操作:

  • 在 Visual Studio 中,前往"工具" > "NuGet套件管理員" > "套件管理器控制台"
  • 在程式包管理器控制台標籤中輸入以下代碼:

    Install-Package IronXl.Excel

現在該軟體包將下載並安裝到當前專案中,即可使用。

如何在 C# 中從 Excel 檔案取得儲存格值,圖 6:透過命令列安裝 透過命令列安裝

5. 使用IronXL從 Excel 檔案中取得特定儲存格值

使用IronXL檢索儲存在 Excel 工作表特定儲存格中的資料是一個簡單的過程,只需要幾行程式碼。 借助此軟體庫,開發人員可以輕鬆地在程式中存取所需的 Excel 儲存格值。 以下程式碼範例將示範如何使用IronXL透過儲存格位址取得 value 屬性。

using IronXL;
using System;
using System.Linq;

class Program
{
    static void Main()
    {
        // Load the Excel workbook
        WorkBook workBook = WorkBook.Load("sample.xlsx");

        // Access the first worksheet
        WorkSheet workSheet = workBook.WorkSheets.First();

        // Define a range
        var range = workSheet["B2:B2"]; // This specifies the cell range to read

        // Get the value stored in cell B2
        foreach (var cell in range)
        {
            Console.WriteLine($"Value in B2: {cell.Value}");
        }
    }
}
using IronXL;
using System;
using System.Linq;

class Program
{
    static void Main()
    {
        // Load the Excel workbook
        WorkBook workBook = WorkBook.Load("sample.xlsx");

        // Access the first worksheet
        WorkSheet workSheet = workBook.WorkSheets.First();

        // Define a range
        var range = workSheet["B2:B2"]; // This specifies the cell range to read

        // Get the value stored in cell B2
        foreach (var cell in range)
        {
            Console.WriteLine($"Value in B2: {cell.Value}");
        }
    }
}
$vbLabelText   $csharpLabel

上面的程式碼範例從儲存格 B2 取得一個值,並將其列印到控制台。

如何在 C# 中從 Excel 檔案取得儲存格值,圖 7:輸出控制台 輸出控制台

5.1. 從 Excel 工作表中讀取值範圍

透過對上面提供的程式碼範例進行一些修改,可以從 Excel 工作表中取得一系列儲存格值。 這涉及到更改傳遞給WorkSheet物件的 range 參數。 具體來說,必須更新範圍參數,以反映包含所需資料的儲存格範圍。

using IronXL;
using System;
using System.Linq;

class Program
{
    static void Main()
    {
        // Load the Excel workbook
        WorkBook workBook = WorkBook.Load("sample.xlsx");

        // Access the first worksheet
        WorkSheet workSheet = workBook.WorkSheets.First();

        // Define a new range covering B2 to B3
        var range = workSheet["B2:B3"];

        // Get values stored in the defined range
        foreach (var cell in range)
        {
            Console.WriteLine($"Value in {cell.Address}: {cell.Value}");
        }
    }
}
using IronXL;
using System;
using System.Linq;

class Program
{
    static void Main()
    {
        // Load the Excel workbook
        WorkBook workBook = WorkBook.Load("sample.xlsx");

        // Access the first worksheet
        WorkSheet workSheet = workBook.WorkSheets.First();

        // Define a new range covering B2 to B3
        var range = workSheet["B2:B3"];

        // Get values stored in the defined range
        foreach (var cell in range)
        {
            Console.WriteLine($"Value in {cell.Address}: {cell.Value}");
        }
    }
}
$vbLabelText   $csharpLabel

儲存格範圍從 [B2:B2] 變更為 [B2:B3]; 這樣會在控制台中列印兩個值而不是一個值。

如何在 C# 中從 Excel 檔案取得儲存格值,圖 8:輸出控制台 2 輸出控制台 2

6. 結論

使用 C# 取得 Excel 工作表中特定儲存格的值是許多處理 Excel 資料的應用程式的常見任務。 IronXL是一個功能強大的.NET開發人員軟體庫,它提供了一種簡單且有效率的方式,可以在應用程式中讀取、寫入和操作 Excel 電子表格。 借助IronXL,開發人員可以快速輕鬆地將 Excel 功能整合到他們的應用程式中,從而節省時間並簡化開發流程。

透過按照本文概述的步驟進行操作,開發人員可以學習如何將IronXL連接到他們的 C# 項目,以程式設計方式擷取儲存格值,自動執行涉及 Excel 資料的任務,並建立更有效率、更可靠的應用程式。 IronXL是一款功能全面、可靠的解決方案,可用於在 C# 應用程式中處理 Excel 檔案。 請訪問這些鏈接,以了解有關單元格地址的詳細操作或如何導入 Excel 文件的更多信息。

IronPDF的用戶也可以從Iron Suite中受益,Iron Suite 是一套軟體開發工具,包括IronPDF、 IronOCR、 IronXL、 IronBarcode和 IronWebscraper。

常見問題解答

如何從 Excel 文件中檢索特定的單元格值在 C# 中?

您可以使用 IronXL 獲取特定的單元格值,通過加載 Excel 工作簿、訪問所需的工作表,並使用 WorkSheet.GetCellValue 方法從特定的單元格中獲取值。

使用 C# 檢索 Excel 單元格值的先決條件是什麼?

要使用 C# 檢索 Excel 單元格值,您需要安裝 Visual Studio、ASP.NET 和通過 NuGet 包管理器的 IronXL 庫。

我可以使用 C# 從 Excel 工作表中讀取一範圍的單元格值嗎?

是的,使用 IronXL,您可以指定範圍並使用 WorkSheet.GetRange 從指定的 Excel 工作表中檢索值。

如何使用命令行安裝 IronXL?

IronXL 可以使用命令行在 Visual Studio 包管理器控制台中執行 Install-Package IronXl.Excel 來安裝。

使用 IronXL 進行 C# 中 Excel 數據操作的好處是什麼?

IronXL 允許將 Excel 功能無縫集成到您的 C# 應用程序中,簡化數據操作,提高生產力,並消除對 Interop 的需求。

如何創建用於處理 Excel 文件的新 C# 項目?

在 Visual Studio 中創建一個新的 C# 項目,選擇一個項目模板,如控制台應用程序,命名您的項目,選擇其位置,並選擇所需的框架。

可以在 C# 中不使用 Interop 操作 Excel 試算表嗎?

可以,IronXL 允許您在 C# 中操作 Excel 試算表,而不依賴於 Interop,提供更簡單有效的方法。

如何使用 IronXL 改善我的 C# 應用程序中的 Excel 數據分析?

IronXL 使您可以高效地在 C# 應用程序中檢索、修改和分析 Excel 數據,增強數據處理和分析能力。

Jordi Bardia
軟體工程師
Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担產品测测试,產品開發和研究的责任時,Jordi 為持续的產品改進增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me