在實際環境中測試
在生產環境中測試無浮水印。
在任何需要的地方都能運作。
程式設計上更改 Excel 試算表可能會很困難,主要有兩個原因。首先,在處理試算表時,用戶必須保持一致的界面和文件結構,而這並不總是很簡單。其次,在特定情況下,尤其是涉及複雜計算時,並不總是清楚哪些代碼會起作用。程式設計上創建 Excel 文件有許多困難的原因。程式員必須首先將 Excel 文件中的數據轉換成可讀格式,然後解析數據並再度解析回去,這更加困難。我已經找到了解決這個問題的方法。我將教你如何使用 IronXL .NET Excel 函式庫創建一個 Excel 文件並程式化地將 Datatable 匯出到 Excel 試算表中而不會遇到任何問題。我們開始吧:
資料行
的 資料表
在 C# 中價值
屬性在 單元格
並填入工作表中的資料 資料行
要使用 IronXL 庫,我們必須在 Visual Studio 中建立一個 .NET 專案。您可以使用任何版本的 Visual Studio,但建議使用最新版本。您可以根據需求建立像是 Windows Forms 的應用程式或是不同的專案模板。為了簡單起見,我將在本教程中使用主控台應用程式。
在 Visual Studio 中創建新專案 UI
接下來,輸入專案名稱和專案的位置。
建立新專案的配置步驟
接下來,選擇下面的框架。在這個專案中,我們將使用 .NET Core 6。
.Net 框架選擇 UI
一旦應用程式創建了解決方案,它將打開 program.cs 文件,你可以在其中輸入程式碼並建置/執行應用程式。
新的專案中的空 program.cs 檔案
接下來,我們可以添加庫來測試代碼。
IronXL 程式庫可以通過四種方式下載和安裝。
這些是:
我們可以使用 NuGet 套件管理器安裝 IronXL 庫。首先必須打開 NuGet 套件管理器,然後在瀏覽標籤中搜索 IronXL。從搜索結果中選擇 IronXL 並安裝它。之後,我們的專案將準備好在 IronXL 庫中使用。
下面的截圖顯示了我們如何在 Visual Studio 中打開 NuGet 套件管理器。
在 Visual Studio 中導航至 NuGet 套件管理員
IronXL 在搜索結果中:
搜尋 IronXL 庫
許多人喜愛使用控制台來執行操作。所以,我們也可以通過控制台安裝它。請按照以下步驟通過命令列安裝 IronXL。
Install-Package IronXL.Excel
現在該軟件包將下載/安裝到當前項目並準備使用。
透過控制台安裝 IronXL 套件
第三種方法是從網站直接下載 NuGet 套件。
點擊鏈接以 下載最新套件 直接從網站下載。下載後,請按照以下步驟將套件添加到專案中。
IronXL 使我們可以輕鬆地將資料表匯出到 Excel 文件中,步驟數非常有限。
首先,我們需要包含 IronXL 的命名空間,如下面的程式碼截圖所示。添加後,我們可以在程式碼中使用 IronXL 的類和方法。
在使用庫之前包含 IronXL 的 namespace
IronXL 允許我們創建 Excel 文件並將其轉換為工作簿對象。將它們轉換為對象後,我們可以執行各種操作。在下面的示例代碼中,我們將把一個 Datatable 轉換為一個 Excel 工作表,然後我們可以創建一個 Excel 文件。
public static void ExportToExcel(string filePath)
{
DataTable table = new DataTable();
table.Columns.Add("DataSet_Animal", typeof(string));
table.Rows.Add("Lion");
table.Rows.Add("Tiger");
table.Rows.Add("Cat");
table.Rows.Add("Goat");
table.Rows.Add("Panther");
table.Rows.Add("Fox");
table.Rows.Add("Cheetah");
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;
foreach (DataRow row in table.Rows)
{
ws ["A" + (rowCount)].Value = row [0].ToString();
rowCount++;
}
wb.SaveAsCsv(filePath, ";");
}
public static void ExportToExcel(string filePath)
{
DataTable table = new DataTable();
table.Columns.Add("DataSet_Animal", typeof(string));
table.Rows.Add("Lion");
table.Rows.Add("Tiger");
table.Rows.Add("Cat");
table.Rows.Add("Goat");
table.Rows.Add("Panther");
table.Rows.Add("Fox");
table.Rows.Add("Cheetah");
WorkBook wb = WorkBook.Create(ExcelFileFormat.XLS);
WorkSheet ws = wb.DefaultWorkSheet;
int rowCount = 1;
foreach (DataRow row in table.Rows)
{
ws ["A" + (rowCount)].Value = row [0].ToString();
rowCount++;
}
wb.SaveAsCsv(filePath, ";");
}
Public Shared Sub ExportToExcel(ByVal filePath As String)
Dim table As New DataTable()
table.Columns.Add("DataSet_Animal", GetType(String))
table.Rows.Add("Lion")
table.Rows.Add("Tiger")
table.Rows.Add("Cat")
table.Rows.Add("Goat")
table.Rows.Add("Panther")
table.Rows.Add("Fox")
table.Rows.Add("Cheetah")
Dim wb As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
Dim ws As WorkSheet = wb.DefaultWorkSheet
Dim rowCount As Integer = 1
For Each row As DataRow In table.Rows
ws ("A" & (rowCount)).Value = row (0).ToString()
rowCount += 1
Next row
wb.SaveAsCsv(filePath, ";")
End Sub
在上述程式碼中,我們將資料表匯出至 Excel 檔案。首先,我們創建一個 DataTable
,接著創建欄位標頭。創建欄位後,我們逐一添加欄位。一旦我們添加了欄位,就創建 Workbook
物件。通過使用該物件,我們可以將資料添加到 Excel 工作表,然後將資料保存到位置。我們正在創建 工作表
允許創建工作表的物件,然後我們可以將其添加到 WorkBook
物件中。
我們使用 foreach
迴圈逐一讀取資料表值,然後將值添加到工作表中。一旦所有值都添加到工作表中,我們就使用方法 SaveAsCSV 將它們保存為 CSV 檔案——我們需要將分隔符和檔案名稱(包括位置)作為參數傳遞。分隔符是一個可選參數,如果不需要可以忽略。
在 Visual Studio 中完成的代碼
上述是我們在 .NET Core 6 中使用的完整代碼截圖。
結果:
當在 Microsoft Excel 中打開檔案的結果
上面是執行的程式碼範例結果。在截圖中,所有在數據表上的數據已一一新增到新建立的 Excel 表格中。
IronXL 是最常用的 Excel 函式庫之一。它不依賴任何其他第三方函式庫,獨立運作且不需要安裝 MS Excel。它可在多個平台上運行。IronXL 的入門價格為 $liteLicense。此外,它提供一年的產品支援和更新費選項。IronXL 在額外費用中提供免權利金再分配覆蓋範圍。欲了解更多價格詳情,請訪問我們的 授權頁面.